- 1、本文档共59页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第02章数据类型讲述
* 2.8.5 C++语言的抽象数据类型 自学 * 2.8.6 Java抽象数据类型 自学 * 2.9 类型检查 对数据对象的类型和使用的操作是否匹配的一致性检查称为类型检查。 * 静态检查和动态检查 静态检查使程序更正确,更有效。 动态检查使编程方便,但影响了可靠性,且降低了执行效率。 * 语言按数据类型分类 语言可以按数据类型进行分类,可分为: 无类型语言:没有类型定义。 强类型语言:所有类型检查都在编译时完成。 弱类型语言:类型检查全部或部分要在运行时完成。 * 2.10 类型转换 某种类型的值转换为另一种类型的值。 1. 语言应该提供类型转换机制 隐式(自动)转换 显式(强制)转换 * 2.两种转换方式 拓展:转换之后的类型值集合包含转换之前类型值集合(整型→实型) 收缩:若转换之前类型值集合包含转换之后类型值集合(实型→整型) * 在某些语言中,类型转换的要求和规则都是隐式的——FORTRAN 语言; 在某些语言中,类型转换的要求和规则都是显式的—— ADA语言。 在某些语言中,类型转换的要求和规则有隐式、显式的两类—— C语言。 * 3. 隐式转换 隐式转换常发生在下述的情况下。 混合运算:级别低的类型向级别高的类型转换。 将表达式的值赋给变量:表达式的值向变量类型的值转换。 * 实参向函数形参传值:实参的值向形参的值进行转换。 函数返回值:返回的值向函数返回类型的值进行转换。 * 2.11 类型等价 T1和T2是两个类型 T1的任何值都可以赋予T2的变量,反之亦然; T1实参可对应T2形参,反之亦然, 则T1和T2类型等价(相容)。 * 两种类型等价, 1. 名字等价 两个变量的类型名相同。 2. 结构等价 两个变量的类型具有相同的结构。 验证:用用户定义类型的定义来代替用户定义名,重复这一过程,直到没有用户定义类型名为止。 * 2.12 实现模型 在实现模型中,一个数据用描述符和数据对象来表示。 数据对象:存储区及其值 描述符:描述数据对象的属性 * 内部类型 描述符一般由类型描述和一个指针组成。如 整数类型: * 实数类型: * 结构类型 1. 笛卡儿积 Pascal记录的类型说明 type t = record a : real; b : integer end * * 2. 有限映像 Pascal的数组说明 type a = array[0..10] of real * * 3. 序列 可变长串的表示 * 4. 判定或 Pascal的变体记录 type v = record a : integer; case b : boolean of true :( c : integer ); false :( d : integer; e : real ) end * * 5. 幂集 对幂集可以通过访问的存储空间(例如机器字)来有效地实现。 若在某个集合S中出现基类型的第i个元素,那么与 S相关联的字的第i个位置为“1”。 * 两个集合的操作: 联合通过它们相关联的字的“或”操作来实现。 交集通过“与”操作来实现。 * 6. 指针 指针变量的表示类似于内部类型,只是其值为地址。 * 7. 层次结构数据结构对象的表示 类型t的数据对象说明如下: type t = record a : real; b : t1; c : integer end; 其中, t1 = array[0..3] of integer; * * 类似地,二维数组变量的类型说明 type t2 = array[0..2] of t4; 其中 t4 = array[0..5] of integer; * * 第2章 数据类型 数据类型实质上是对存储器中所存储的数据进行的抽象。 数据类型作为数据结构的抽象表示,可以分为三个层次的抽象,即内部类型、用户定义类型和抽象数据类型。 数据类型包含一组值和一组操作。 * 2.1 引言 1. 数据类型的作用 实现了数据抽象 从机器的具体特征中解脱出来 提高了编程效率 * 2. 数据类型的分类 内部类型 语言根据所面向的机器和应用定义了不同的数据类型,这些类型称为内部类型(语言定义类型)。 用户定义类型 语言提供了由用户定义类型的方法。采用这类方法由用户自己定义的数据类型称为用户定义类型(自定义类型) 。 * 2.2 内部类型 1. 内部类
您可能关注的文档
- 站姿坐姿走姿礼仪讲述.ppt
- 竞标校级活动ppt讲述.ppt
- 竞争?合作?公开课讲述.ppt
- 竞技体育模式下退役运动员生活保障问题研究讲述.ppt
- 第14章--构建和谐社会详解.ppt
- 第三章变质岩的基本特征详解.ppt
- 第14章气动回路与气动系统的使用维护详解.ppt
- 竞品模版1.0讲述.pptx
- 竞聘述职报考讲述.ppt
- 竞赛判断讲述.doc
- 2025年网络文学平台版权运营模式创新与版权保护体系构建.docx
- 数字藏品市场运营策略洞察:2025年市场风险与应对策略分析.docx
- 全球新能源汽车产业政策法规与市场前景白皮书.docx
- 工业互联网平台安全标准制定:安全防护与合规性监管策略.docx
- 剧本杀剧本创作审核标准2025年优化与行业自律.docx
- 2025年新能源电动巡逻车在城市安防中的应用对城市环境的影响分析.docx
- 全渠道零售案例精选:2025年行业创新实践报告.docx
- 2025年网约车司乘纠纷处理机制优化与行业可持续发展报告.docx
- 2025年宠物烘焙食品市场法规政策解读:合规经营与风险规避.docx
- 2025年宠物行业数据安全监管政策影响分析报告.docx
文档评论(0)