C++_类和对象.ppt

C++_类和对象.ppt

ID:48181574

大小:1.39 MB

页数:64页

时间:2020-01-18

C++_类和对象.ppt_第1页
C++_类和对象.ppt_第2页
C++_类和对象.ppt_第3页
C++_类和对象.ppt_第4页
C++_类和对象.ppt_第5页
资源描述:

《C++_类和对象.ppt》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、目录第1天类和对象第2天运算符重载、继承(派生)第3天多态性(虚函数)和异常处理第4天设计模式、智能指针的原理第5天泛型编程、标准模版库的使用第1天类和对象(一)类对象构造函数析构函数应用实例类类的声明类的组织形式类的作用域类的成员函数类的访问权限类与结构体类型的区别类的特点类的声明类是一种用户自定义的数据类型,声明类的一般格式如下:class类名{private:私有数据成员和成员函数;protected:保护数据成员和成员函数;public:公有数据成员和成员函数;};各个成员函数的实现;类界面类实现在声明类时有如下规则

2、:如果类的成员是变量,可以像声明变量一样声明它。如果类的成员是函数,一般是使用函数原型来声明它。如果类的成员是函数,它可以访问类中的任何成员——数据成员和成员函数。也就是说,当声明类的成员函数时,定义的函数可以直接访问该类中任何成员而无需将其声明为参数,惟一的限制条件是在使用一个成员之前必须声明它。类的声明classTime{public:Time(int=0,int=0,int=0);//defaultconstructor//setfunctionsvoidsetTime(int,int,int);//sethour,m

3、inute,secondvoidsetHour(int);//sethour(aftervalidation)voidsetMinute(int);//setminute(aftervalidation)voidsetSecond(int);//setsecond(aftervalidation)//getfunctionsintgetHour();//returnhourintgetMinute();//returnminuteintgetSecond();//returnsecondvoidprintUniversal(

4、);//outputtimeinuniversal-timeformatvoidprintStandard();//outputtimeinstandard-timeformatprivate:inthour;//0-23(24-hourclockformat)intminute;//0-59intsecond;//0-59};//endclassTime类的组织形式通常将类界面与类实现分离,将类界面部分存放在头文件(.h)中,将类实现放在程序文件(.cpp)中,而使用类的程序放在另一个程序文件中,这样使整个程序更清晰。例如

5、,声明类C的类界面的部分用c.h文件保存,类实现部分用c.cpp文件保存,而使用类C的部分用a.cpp保存,如图所示。类的作用域声明类时所使用的一对大括号({})形成了类作用域。在类作用域中声明的标识符只在该类中具有可见性,并且其作用域与该标识符声明的次序无关。类作用域包括了类中成员函数的作用域,即使该成员函数的实现放在类的外面也是如此。所以当成员函数的函数体中使用一个标识符时,编译系统首先在成员函数中寻找其声明,如果未找到则在该成员函数所在的类中寻找,如果还未找到,则在包含类作用域的更大作用域中作最后寻找。类的成员函数类的

6、成员函数用于实现某种操作,成员函数的定义体可以在类的声明体中,也可以在类的说明体外。在类声明体中实现的函数是内联函数。在类声明体外实现的函数可以通过在函数声明和定义上分别加上inline来表示该函数是内联的,否则不是内联函数。在类的声明体内定义成员函数的优点是使整个类集中于程序代码的同一位置上,不利的方面是增加了类声明的规模和复杂性,而且,内联的函数代码并不被相同类的对象所共享,因而增大了程序的内存开销。类的访问权限在类声明中,public、private和protected是关键字,称为成员访问限定符,它们分别表示公有、私

7、有和保护的成员访问权限。在C++中,有关类的访问权限的其他规定如下:在默认的情况下,一个类中所有的成员都是私有的。一旦给出了成员访问限定符(如public:),它后面的成员都具有这个成员访问权限(如后面的成员均为公有的),直到出现另一个成员访问限定符或类声明结束为止。访问权限私有的数据成员和成员函数只允许本类的成员函数访问或调用;保护的数据成员和成员函数,允许本类和本类派生类的成员函数访问或调用;公有的数据成员和成员函数允许本类和其它类的函数访问或调用。其中,尽管C++没有要求,但按面向对象的观点,一般情况下,类设计鼓励程序

8、员将数据设计在私有部分,而只将该类的接口操作(函数)放在公有部分。类与结构体类型的区别从类的声明格式可以看出,类与结构体类型是非常相似的。C++中类是由结构体类型演化而来的,但对结构体类型进行了扩展。类的成员可以是数据成员或成员函数,结构体中的成员也可以是数据成员或函数成员。并且在结构体中

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。