- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第3章_1面相对像
C++ 类与对象 指针 继承与派生 类成员的进一步使用 多态性与虚函数 重载 类与对象——类的定义格式 在类中要指定成员的访问权限,没有标明(默认)访问权限的成员为私有成员。 在类内说明访问控制属性的先后顺序没有规定。 在类体内进行数据成员定义时,不允许对数据成员进行赋值。 当在类体外定义函数时,在类体内应由函数原型说明。 类中的成员不能使用auto、extern、register等关键字进行修饰。 其他类的对象可以作类的成员,但自身类的对象不允许作该类成员。 通常将类的定义部分存放在一个用户自定义的头文件中,可方便以后使用。 类与对象——类的成员函数 在所定义的成员函数名之前应缀上类名,类名与函数名之间是作用域运算符“::”。 在定义成员函数时,对带参数的函数,要给出参数的类型和参数名。而类内对应的该函数原型的形参可以只有类型,不写参数名。 函数的返回类型、形式参数的类型与类体内对应函数原型说明的类型要匹配。 当在类体外定义的成员函数较为短小,可以定义为内联函数的形式,在定义时最前面用关键字inline修饰。 类与对象——类成员的访问控制 公有类型定义了类的外部接口,对类来讲,任何来自外部的访问都要通过外部接口来进行。 私有成员不允许外部程序代码直接访问,这样,私有成员就被隐藏在类中。 保护类型同私有类型的差别是在类的继承和派生是对派生类的影响不同。 类与对象——对象的声明与使用 类名 对象名表; point p1, p2, p[], r=p1; 对象名.数据成员 对象名.函数成员 类与对象——构造函数 C++语言在创建一个对象时,通过系统自动调用构造函数对所创建的对象进行初始化。 对象(数据成员)的初值通过自动调用构造函数取得,可以通过赋值或调用已有的成员函数来改变它。 注意事项 该函数的名字与类名相同 构造函数无返回值,因此不允许定义构造函数的返回值类型,其中包括void类型。 该函数可以有一个或多个参数,也可以无参数,无参数的构造函数称为默认构造函数。 该函数通常在创建对象时系统自动调用。如果类内没有定义构造函数,系统会自动定义默认的构造函数。 一个类可以有一个以上的构造函数,重载构造函数由其参数个数、类型和排列顺序区分。 类与对象——拷贝构造函数 在初始化时调用,以便将一个已知对象的数据成员的值赋值给正在创建的另外一个同类的对象。 只有一个参数,并且是对某一个对象的引用 类与对象——析构函数 析构函数的功能是用来释放所创建的对象,主要用来完成对象被删除前的一些清理工作。 析构函数的名字与类名相同,与构造函数的区别是名字前面加一个符号“~”,表明它与构造函数的功能相反。析构函数也没有函数返回类型。 类与对象——对象的生存期 全局对象 全局对象是被定义在一个文件中,而它的作用域是在包含该文件的整个程序中。其缺点是安全性较差,因为在整个程序的各个文件中都可以改变它。 全局对象定义在函数体外,定义时不加修饰符。在某个文件中定义的全局对象,在其他文件中引用前应该说明,在说明时,要在前面加修饰字符extern。 局部对象 静态对象 内部静态对象——定义在函数体或程序块内的静态对象称为内部静态对象,它的作用域为定义它的函数体或程序块内,与局部对象相同; 外部静态对象 定义在函数体外的静态对象称为外部静态对象,它的作用域是从定义时起直到该文件结束。 外部静态对象的作用域是文件级的,而全局对象的作用域是程序级的,静态对象存在内存的静态工作区。 类与对象——类的作用域 类的作用域是介于文件域和函数域之间的作用域。 类作用域中定义的数据成员不能使用register、extern等修饰,类中定义的成员函数也不能用extern修饰。 类的成员函数内出现了该类的其他成员,该成员函数具有类的作用域; 使用类域作用符限定的成员具有类作用域; 在引用对象的成员时,该成员具有类作用域。 对于生存期相同的对象,先创建的对象后释放,后创建的对象先释放。 指针 对象指针和this指针 对象数组和对象指针数组 对象引用 堆对象 Const特性 渐增式软件开发——类组合 指针——对象指针的说明和使用 类类型* 指针名1,*指针名2 对象指针名-数据成员 对象指针名-成员函数(参数表) 或(*对象指针名).数据成员 (*对象指针名).成员函数(参数表) 指针—— this指针 this指针是由系统在编译时自动产生一个指向对象自身的指针,当对象调用一个成员函数时,会把this指针作为一个隐含参数传递给成员函数。成员函数接收到该指针后,就可以利用该指针来回访对象的数据成员。 This指针是属于对象的,它的类型与对象的类型是一致的。 This指针通常供系统用于判断成员函数所使用的到底是哪一个数据成员副本。但是,当需要在一个成员函数内标识被该成员函
您可能关注的文档
最近下载
- 孔庙讲解课件.ppt VIP
- 《城镇燃气无人值守站技术要求 第2部分:运行维护》.pdf VIP
- 人教版2024年小升初数学模拟测试卷(含答案解析)【可编辑打印】.docx VIP
- 产品设计产品设计程序与方法马桶.ppt VIP
- 《城镇燃气无人值守站技术要求 第1部分:建设》.pdf VIP
- 消防培训记录表.doc VIP
- 人教版2024年小升初语文模拟试卷(含答案解析)【可编辑打印】.docx VIP
- 2025年高考英语全国I卷作文试题真题解析及范文.docx VIP
- 2025江苏南京农业大学新校区建设指挥部、基本建设处人员招聘10人考试备考试题及答案解析.docx VIP
- 动力电池管理与维护课件.pptx VIP
文档评论(0)