C基础学习第二章.ppt

上传人:本田雅阁 文档编号:2149005 上传时间:2019-02-22 格式:PPT 页数:15 大小:1.57MB
返回 下载 相关 举报
C基础学习第二章.ppt_第1页
第1页 / 共15页
C基础学习第二章.ppt_第2页
第2页 / 共15页
C基础学习第二章.ppt_第3页
第3页 / 共15页
亲,该文档总共15页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《C基础学习第二章.ppt》由会员分享,可在线阅读,更多相关《C基础学习第二章.ppt(15页珍藏版)》请在三一文库上搜索。

1、第5章 类和对象(一),5.1 类的定义 1. 类的定义格式 类的定义格式如下所示。 /说明部分 class 类名 public: 成员说明 private: 成员说明 ,/实现部分 类体内没有定义的成员函数在这部分进行定义。 其格式如下: 类型类名成员函数名(参数表) 函数体 ,2. 定义类时应注意的事项 (1) 类体内应包含有数据成员和成员函数。通常成员函数定义为公有成员,数据成员定义为私有成员 (2) 类的成员的访问权限有3种: 公有的(publie)、私有的(private)和保护的(protected) (3) 类中的私有成员类体外是不可访问的,体现了类的封装性和隐藏性 (4) 类中

2、的成员函数定义在类体内为内联函数,定义在类体外为外联函数。如果定义在类体外时前加关键字inline则为内联函数 (5) 类体内的数据成员可以是各种不同类型的变量,也可以是另一个类的对象,则称子对象,5.2 对象的定义 1. 对象的定义格式 (1) 一般对象的定义格式 类名对象名表; (2) 指向对象的指针定义格式 类名*指针名; (3) 对象引用的定义格式 类名&引用名=对象名;,2. 对象成员的表示方法 (1) 一般对象成员表示方法 对象名.数据成员名 或对象名.成员函数名(参数表) (2) 指向对象的指针成员表示方法 指针名-数据成员名 或指针名-成员函数名(参数表) (3) 对象引用成员

3、表示方法 (同对象) 参见例5.1、例5.2。,5.3 对象的初始化 创建对象时,系统将自动调用相应的构造函数给对象初始化;释放对象时,系统将自动调用析构函数释放该对象。 1. 构造函数的功能和特点 (1) 构造函数的功能是用来给所创建的对象进行初始化 (2) 构造函数的特点 构造函数的名字同类名。定义时无类型说明 构造函数是一个成员函数,可定义在类体内,也可定义在类体外 构造函数可以有一个参数,也可有多个参数,还可以无参数,并可以重载 构造函数被系统自动调用 当一个类中没有定义任何构造函数时,系统将自动创建一个默认构造函数,2. 析构函数的功能和特点 (1) 析构函数的功能 其功能是用来释放

4、所创建的对象。当一个对象结束它的生存期后,系统将自动调用析构函数来释放该对象。 (2) 析构函数的特点 析构函数的名字同类名,并在类名前加一个字符“”,以与构造函数区别 析构函数无参数,因此无法重载 析构函数定义时无类型说明 析构函数是成员函数,它被系统自动调用 当一个系统没有定义析构函数时,系统将自动创建一个默认的析构函数,3.复制初始化构造函数 (1)复制初始化构造函数的功能 当使用一个已知对象来创建第一个与它相同的对象时,调用复制初始化构造函数。 (2)复制初始化构造函数的特点 该函数名同类名,它也是一个成员函数 该函数不指定类型,只有一个参数,该参数为已知对象的引用 该函数定义格式如下

5、: 类名函数名 (const类名&引用名) 函数体 当一个类中没有定义复制初始化构造函数时,系统将创建一个默认的初始化构造函数 参见例5.3、例5.4。,5.4 成员函数的特征 1. 内联性 定义在类体内的成员函数为内联函数,定义在类体外的成员函数为外联函数。 2. 重载性 成员函数可以重载。 3. 设置参数默认值 成员函数可以设置参数的默认值。 参见例5.6、例5.7、例5.8。,5.5 静态成员 1. 静态成员的特点 静态成员是属于类的,而不是属于某个对象的。 静态成员包含有静态数据成员和静态成员函数两种。 静态成员的定义方法是在该成员说明前加上关键字Static。 2. 静态数据成员 静

6、态数据成员被存放在内存某一单元内,该类的所有对象都 可以访问它。 静态数据成员是静态存储的,必须对它进行初始化,初始化在类体外进行。其格式如下: 类型类名数据成员名=初值; 参见例5.10。,3. 静态成员函数 静态成员函数的特点是该函数中可直接引用静态成员,但不能直接引用非静态成员。该函数的调用可用类名,也可用对象名。参见例5.11。 5.6 友元 1. 友元函数 友元函数是一种说明在类体内的非成员函数。说明友元函数的方法如下: friend 类型函数名(参数表) 函数体 友元函数的特点是可访问该类体内的私有成员和其他成员。 注意: 友元函数破坏隐藏性,应慎重使用。参见例5.12、例5.13

7、。,2. 友元类 在一个类体内,按下列格式说明的类称友元类。 friend class 类名; 友元类的特点是该类中的成员函数为其类的友元函数。 参见例5.14。,5.7 类的作用域和对象的生存期 1. 类的作用域 类的作用域简称为类域,它指在某个类的类体内。类域介于文件域和函数域之间。 由于类中成员具有不同的访问极限,使得类中成员的作用域比较复杂。 2. 嵌套类和局部类 (1) 嵌套类是指在一个类中再定义一个类。定义嵌套类的类称外围类。嵌套类只能在外围类内使用,在外围类外使用时应加类名限定 (2) 局部类是指在一个函数体内定义的类,3. 对象的生存期 按生存期可将对象分为如下3类。 (1) 局部对象 作用域在函数体内或程序块内。 (2) 静态对象 作用域在定义它的文件内。 (3) 全局对象 作用域是整个的程序。 参见例5.15。,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1