C++大学基础教程第八章类与对象.ppt

  1. 1、本文档共53页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
C++大学基础教程第八章类与对象.ppt

北京邮电大学电信工程学院计算机技术中心 C++大学基础教程 第8章 类与对象 北京邮电大学电信工程学院 计算机技术中心 类是实现C++面向对象程序设计的基础。面向对象程序设计的基本特点有:抽象、封装、继承和多态,类把数据和函数封装在一起,是C++封装的基本单元。 第8章 类与对象 8.1 类和对象的定义 8.2 对象的使用 8.3 构造函数 8.4 析构函数 8.5 拷贝构造函数 8.6 类的静态成员 8.7 类成员的保护和使用 8.8 类的组合 8.9 面向对象分析和设计 8.1 类和对象的定义 8.1 类和对象的定义 一个类表示现实生活中的一类事物,比如“学生”,事物有相应的特征或属性,它们就是类的数据成员;事物可能有行为动作,也可能被某些行为动作所操作,这些都用函数来实现,这些函数和类有着不可分割的关系,是构成类的函数成员,或者叫成员函数。 在C++中,类实际上相当于一种用户自定义的数据类型。 8.1 类和对象的定义 对象是一类事物中的一个具体的个体。 在定义了类类型后,就可以该类型的变量,这个变量就称为类的对象(或实例)。所以,从程序设计的角度来看,对象就相当于变量。 8.1 类和对象的定义 举例: 1、使用类对象 如果已经知道某个类的功能和接口函数,就可以使用它了。先定义类对象,通过对象调用接口函数实现一定的功能。 class student stu01; //class也可以省略不写 stu01.getscore(); stu01.printstu(); 这个过程的本质是:根据对象所需要完成的任务,向对象发送消息。对象收到消息后,调用接口中的相应的函数,完成它的功能。对象只需要知道“做什么”,具体工作由成员函数来完成。 2、类的声明 类的声明具体说明类的组成,声明类的语法形式为: class 类名称 { public: 公有成员 protect: 保护型成员 private: 私有成员 }; 2、类的声明 其中,“成员”既可以是数据成员,也可以是成员函数的原型。数据成员的声明方式与一般变量相同。函数成员是描述类的对象可以进行的操作,一般在类中声明原型,在类声明的外面定义函数的具体实现。 关键字public、protect、private说明类成员的访问控制属性。私有(private)成员只允许本类的成员函数来访问;公有(public)成员是类对外的接口,在类声明和类(函数)实现之后,类的对象可以访问公有成员。保护型(protected)成员的可访问性和私有成员的性质相似。 2、类的声明 关于访问控制属性,注意: 在类声明中,三种访问控制属性,可以按任意次序出现,也可以不出现。public等关键字也可以多次出现,但是一个成员只能具有一种访问控制属性。 如果不写访问控制属性关键字,默认的是private。在书写时通常习惯将公有类型放在最前面,这样便于阅读,因为它们是外部访问时所要了解的。 一般情况下,一个类的数据成员应该声明为私有成员,这样封装性较好。一个类应该有一些公有的函数成员,作为对外的接口,否则别的代码无法访问类 3、类的成员函数 类的成员函数描述的是类的行为或操作。函数的原型声明要在类的主体中,原型说明了函数的参数表和返回值类型。而函数的具体实现一般是写在类声明之外的。 在类的外部定义成员函数的语法形式为: 返回值类型 类名::成员函数名(参数表) { 函数体 } 3、类的成员函数 如果在类的内部定义成员函数的具体实现,则该成员函数为内联成员函数。 函数定义时没有任何的附加说明,所以称为隐式声明的内联成员。 4、对象 定义一个对象和定义一个一般变量相同。 定义变量时要分配存储空间,同样,定义一个对象时要分配存储空间,一个对象所占的内存空间是类的数据成员所占的空间总和。类的成员函数存放在代码区,不占内存空间。 类的成员是抽象的,对象的成员才是具体的。类的数据成员都不会有具体的属性值。只有对象的成员才会有具体的属性值。 4、对象 声明了类及其对象,在类的外部(指类定义和成员函数的实现代码之外),就可以访问对象的公有成员(包括数据成员和函数成员)了。 在类的外部,只能通过对象访问类的公有成员;在类的成员函数内部,可以直接访问类的所有成员,这就实现了对访问范围的有效控制。 5、类的作用域与可见性 类作用域是指类定义和相应的成员函数定义的范围,通俗地称为类的内部。 C++认为一个类的全部成员都是一个整体的相关部分。一个类的所有成员位于这个类的作用域内,在该范围内,一个类的成员函数对本类的其它成员具有无限制的访问权。 8.2 对象的使用 8.2 对象的使用 对象是类的一个具体的实例,类和对象的关系相当于普遍与特殊

文档评论(0)

000 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档