《第11章类》-公开课件.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第11章 类 本章导读 本章开始类的学习,那么什么是类?是非常累吗?不是,绝对不是,类其实一点都不“累”,而且用起来还很“舒服”。 通过本章的学习,要了解下面的内容: 类是如何进行定义与声明的。 熟练掌握类的作用域。 熟练掌握类的构造函数,类是如何进行构造的。 熟练掌握类的析构函数,类是如何进行析构的。 熟练掌握类的友元与static成员。 11.1 类的定义与声明 本节所学的内容为类的定义与声明。首先,如果没有类会怎么样呢?这时将遇到许多的问题,所以接下来就对类进行定义,类定义后还不能使用,还要用类来产生对象。类中包含了成员函数。类还具有数据封抽象与封装的特性。在类中通过设置访问标号来设置其中各成员的访问权限。最后,还谈了结构与类的区别。 11.1.1 如果没有类会怎么样 日常生活中不少人都有手表,有机械的,也有电子表,两种表同样都能显示时间,方便人们的日常生活与工作。电子表显示的时间是由三部分组成的,即:时、分与秒。其中还可以设置其中各部分的功能,如果电子表的分与标准时间对不准了,这时便可以调节时间的分这一部分,使它与标际奔湎嗤5比挥械牡缱颖砘褂猩柚媚种拥墓δ埽梢陨柚靡桓鍪奔洌玫缱颖淼降惚阃过发声的方式来叫醒睡着中的人。 11.1.2 类定义 类是数据、函数或类型别名的集合,它把这些都整合到了一起,组成一个新的类型,然后程序员便可以像使用内置类型一样来使用这个新类型,使用起来与内置类型一样的方便。当然一个类可以定义多个成员,即可以定义多个数据,也可以定义多个函数,这些都是跟据自己编写程序的需要赐瓿傻模抑灰阍敢猓嗷箍梢悦挥谐稍保抢嗍侨绾味ㄒ宓哪兀 11.1.3 类对象 上面的类只是定义了一个新的类型,并不能使用,就像int是一个类型一样,它是不能使用的,那怎样才能使类变成有用的实体呢?其实跟内置类型一样,只要定义相关的变量就可以了,比较下面两个定义。 int a; watch wch; 11.1.4 成员函数 类中可以包含成员函数,当然这个成员函数即可以在类里面定义,也可以在类的外面定义。 在类外定义类的成员函数时必须加上该类的限制符,如定义了类print,并在类里面声明了函数printint(),那么在类外进行函数定义时必须加上限定符print::printint(),说明这里定义的函数是类print里面的函数。 1.类的成员函数的使用 2.给成员函数加上关键字const 11.1.5 数据抽象与封装 类有两种思想:数据抽象与封装。 像电子表的例子中设置时、分与秒的函数经就是一个接口,在主函数中使用了这个接口,用于设置时、分与秒,而它的实现部分在类里面定义,这样就完成了接口与实现在的分离。类的设计者完成类的实现,一个类它要完成怎样的任务,它包含了实现这些任务的细节,这就是类的设计者所瓿傻娜挝瘢褪翘峁┮恢中碌睦嘈停嗟氖褂谜呔褪鞘褂谜飧隼嗬赐瓿上嘤Φ娜挝瘢嗟氖褂谜卟挥霉匦睦嗍侨绾问迪终庑┫附诘摹U庋嗟纳杓普咧桓涸鹗迪忠桓隼啵嗟氖褂谜卟挥霉芾嗍侨绾问迪值摹O喾蠢嗟使用者只管通过类的接口完成任务,不用考虑类是如何实现的。 11.1.6 访问标号 在电子表的例子当中已经使用到了关键字private与public,这是类里面的两种访问标号。类里面有三种访问:private、public与protected。 11.1.7 类声明与类定义的区别 与变量一样,类可以声明也可以定义。在定义类时,遇到右花括号时类的定义便结束了。这时就知道了类的成员,以及该类对象所需的存储空间。在一个源文件中,一个类只能定义一次,那如果在多个文件中定义同一个类时呢?这时类的定义必须完全相同。下面为类的声明,它声明了一个类,但是没有定义它: class print; 11.1.8 inline(内联)函数 前面讲解了成员函数,成员函数可以在类里面定义,也可以类的外面定义,但是如果类里面有这样一个函数,它在类的外面定义,但在执行程序时它却是在类里面的,这时怎么办呢?这时就可以使用内联函数,内联函数使用关键字inline。内联函数的关键字一般在类外定义函数时使用,下面举例来说明内联函数。当然也可以在类内部定义函数时指定,但是不能只用在类中函数的声明处。 11.1.9 结构与类 结构是以关键字struct开始,然后接结构名,最后是结构的成员部分: struct 结构名 { 结构的实现部分 }; 11.2 类的作用域 与变量有作用域一样,类也是有作用域的,在类中定义的各成员只能在类中使用,当然有些成员可以在类外进行访问,这是因为设置了类的访问标号,如果不设访问标号,那么在类外是不能访问类中的成员的,因为这时类的成员是私有的。 11.2.1 每个类都有一个作用域 一旦定义了一个类,那么该类便有了自己的作用域以及

文档评论(0)

老刘忙 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档