- 1、本文档共11页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
c二章总结
注:文本框可根据需求改变颜色、移动位置;文字可编辑 第二章 类和对象的特性 点击添加文本 点击添加文本 点击添加文本 点击添加文本 目录 类的成员函数 类的声明和对象的定义 对象成员的引用 面向对象的程序设计方法概述 点击添加文本 点击添加文本 点击添加文本 点击添加文本 面向对象的程序设计方法概述 1,对象:客观世界中任何一个事物都可以看成一 个对象,每个对象都是由数和函数构成。数据体现 了对象的某种属性函数是用来对数据进行操作的, 以便实现某种功能。 2,封装与信息隐蔽:对一个对象进行封装处理。 使它的一部分属性和功能对外界隐蔽。 点击添加文本 点击添加文本 点击添加文本 点击添加文本 类的声明和对象的定义 在定义类时,只是定义了一种数据类型,即说明程序中可能会出现该类型的数据,并不为类分配存储空间。 只有在定义了属于类的变量后,系统才会为类的变量分配空间。 类是对象的抽象,对象是类的具体实例。 不同对象占据内存中的不同区域,它们所保存的数据各不相同,但对成员数据进行操作的成员函数的程序代码均是一样的。 点击添加文本 点击添加文本 点击添加文本 点击添加文本 定义对象的方法 1、先声明类类型,然后再定义对象 class 类名 对象名; 或 类名 对象名; 如:已定义了类Record,则: class Record book1,book2; 或Record book1,book2; 2、在声明类类型的同时定义对象 class Student // 声明类类型 { … } stud1,stud2; // 定义了两个Student类的对象 3、不出现类名,直接定义对象 class // 无类名 { … } stud1,stud2; // 定义了两个Student类的对象 点击添加文本 点击添加文本 点击添加文本 点击添加文本 类内定义: 类的成员函数 成员函数与成员数据的定义不分先后,可以先说明函数原型,再在类体外定义函数体。 class A { float x, y; public: void Setxy(float a,float b) { x=a; y=b; } void Print(void) { coutx‘\t’yendl; } }; void A::Setxy(float a,float b) { x=a; y=b; } 类外定义: 点击添加文本 点击添加文本 点击添加文本 点击添加文本 内置成员函数及其储存方式 当我们定义一个类时,可以在类中直接定义函数体。这时成员函数在编译时是作为内置函数来实现的。 注:只有在类外定义的成员函数规模很小而且调用频率较高时,才指定为内置函数 class A { float x, y; public: void Setxy(float a,float b); void Print(void); }; inline void A::Setxy(float a,float b) { x=a; y=b; } inline void A::Print(void) { coutx‘\t’yendl; } 同时,我们也可以在类体外定义类的内联成员函数,在类体内说明函数,在类体外定义时,在成员函数的定义前面加上关键字inline。 点击添加文本 点击添加文本 点击添加文本 点击添加文本 成员函数的其储存方式 每个对象所占用的存储空间只是该对象的数据成员所 占的存储空间,而不包括函数代码所占用的存储空间。 Print() Setxy() a1 n m y x Print() Setxy() a2 n m y x (1)不论成员函数在类内定义还是在类外定义,成员 函数的代码段都是相同的,都不占用存储空间。 (2)不论是否用inline声明,成员函数的代码段都不占 用存储空间。 (3)成员函数是和数据一起封装在一个对象中的,只允 许本对象中的函数访问同一对象中的私有数据。 点击添加文本 点击添加文本 点击添加文本 点击添加文本 对象成员的引用 1、通过对象名和成员运算符访问对象中成员 即通过公有函数为私有成员赋值 class Test{ int x , y; public: void Setxy(int a, int
文档评论(0)