导图社区 第四章 类与对象
C++语言程序设计第四版,郑丽
社区模板帮助中心,点此进入>>
互联网9大思维
组织架构-单商户商城webAPP 思维导图。
域控上线
python思维导图
css
CSS
计算机操作系统思维导图
计算机组成原理
IMX6UL(A7)
考试学情分析系统
第四章 类与对象
第3、4节课的内容
类
实现对数据的封装和隐蔽
类的定义需要说明类中的数据有哪些,对这些数据能够进行什么的操作
声明的时候,最后的地方要加上分号;
如果紧跟在类名称后面声明私有成员,则关键字private可以省略
不过我们自己写的时候,最好不省略,免得忘记
类的成员
在类中说明原型,
可以在类外给出函数体实现,并在函数名前使用类名和两个冒号加以限定。
也可以直接在类中给出函数体,形成内联成员函数
在类中声明内联成员函数的方式
将函数体放在类的声明中
外面:内联成员函数的前面使用inline关键字
允许声明重载函数和带默认形参值的函数
对象
类的对象是该类的某一特定实体
声明形式: 类名 对象名;
例:Clock myClock;
类中成员的访问方式
类中成员互访:直接使用成员名
类外访问:使用 对象名.成员名 的方式访问public属性的成员
构造函数
特点
函数名和类名保持一致
没有返回类型
作用:在对象被创建时使用特定的值构造对象,或者说将对象初始化为一个特定的状态。 初始化
如果程序中未声明,则系统自动产生出一个默认形式的构造函数
在对象创建时由系统自动调用
允许为内联函数、重载函数、带默认形参值的函数
复制构造函数
其形参为本类对象的引用
形式:类名(类名 &对象名)
例:Point(point &p);
使用情况P111~113
用类的一个对象去初始化该类的另一个对象
若函数的形参是类的对象,调用函数时,进行形参和实参的结合
若函数的返回值是类的对象,函数执行完成返回调用者时
默认构造函数
例:Clock(){}
可以和构造函数同时存在在一个类中
析构函数
完成对象被删除前的一些清理工作
在对象的生存期结束的时刻系统自动调用它,然后再释放此对象所属的空间
如果程序中未声明析构函数,编译器将自动产生一个默认的析构函数
形式
类名前加~,没有返回值,不接收任何参数
类的组合
一个类内嵌其他类的对象作为成员
构造函数的设计
原则:不仅要负责对本类中的基本类型成员数据赋初值,还要对对象成员初始化
声明形式:类名::类名(对象成员所需形参,本类成员形参):对象1(形参),对象2(形参),...{类的初始化}
P118例子
面向对象程序设计的基本特点
抽象
对对象加以概括,找出公共性质加以描述
封装
将数据和对数据进行操作的函数进行结合,形成类
继承
新类从已有的类那里获得已有的特性
多态
发出同一个指令,信息获得者却做出不同的反应,例如重载函数