C++面向对象程序设计(第三章)ppt课件.ppt

C++面向对象程序设计(第三章)ppt课件.ppt

ID:59448052

大小:576.50 KB

页数:84页

时间:2020-09-18

C++面向对象程序设计(第三章)ppt课件.ppt_第1页
C++面向对象程序设计(第三章)ppt课件.ppt_第2页
C++面向对象程序设计(第三章)ppt课件.ppt_第3页
C++面向对象程序设计(第三章)ppt课件.ppt_第4页
C++面向对象程序设计(第三章)ppt课件.ppt_第5页
资源描述:

《C++面向对象程序设计(第三章)ppt课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、C++程序设计第三章中国石油大学计算机系2011.4第3章关于类和对象的进一步讨论3.1构造函数3.2析构函数3.3调用构造函数和析构函数的顺序3.4对象数组3.5对象指针3.6共用数据的保护(难点)3.7对象的动态建立和释放3.8对象的赋值和复制3.9静态成员3.10友元3.11类模板3.1构造函数3.1.1对象的初始化3.1.2构造函数的作用3.1.3带参数的构造函数3.1.4用参数初始化表初始化数据成员3.1.5构造函数的重载3.1.6使用默认参数的构造函数确定对象的初始状态3.1.2构造函数的作用构造

2、函数的作用:用于为对象分配空间和进行初始化。构造函数的特点:(1)构造函数的名字与它的类名必须相同;(2)它没有类型,不返回值,为public类型;(3)它可以带参数,也可以不带参数;(4)不需要写调用语句,在系统建立对象时由系统自觉调用执行。(5)如果用户没有定义构造函数,C++系统会自动生成一个空的构造函数。(6)允许为内联、重载、带缺省形参的函数。#includeusingnamespacestd;classTime{public:Time(){hour=0;minute=0;sec

3、=0;}voidset_time();voidshow_time();private:inthour;intminute;intsec;};例3.1在例2.3的基础上定义构造成员函数构造函数intmain(){Timet1;//定义对象的同时调用了构造函数t1.set_time();t1.show_time();Timet2;//定义对象的同时调用了构造函数t2.show_time();return0;}voidTime::set_time(){cin>>hour;cin>>minute;cin>>sec;}

4、voidTime::show_time(){cout<

5、输出t2的数据成员的初值。10255410:25:54//输出t1的值0:0:0//输出t2的值也可以在类内声明构造函数,然后在类外定义构造函数。将程序修改为:Time();然后在类外定义构造函数:Time::Time(){hour=0;minute=0;sec=0;}//不带参数的构造函数程序运行的情况为:3.1.3带形参数的构造函数优点:实现不同对象的初始化。一般格式:构造函数名(类型形参1,类型形参2,…)定义对象的格式:类名对象名(实参1,实参2,…);例3.2有两个长方柱,其长、宽、高分别为:(1)

6、12,25,30(2)15,30,21编写程序,在类中用带参数的构造函数,计算它们的体积。分析:可以在类中定义一个计算长方体体积的成员函数计算对象的体积。#includeusingnamespacestd;classBox{public:Box(int,int,int);//带形参的构造函数intvolume();private:intheight;intwidth;intlength;};Box::Box(inth,intw,intlen)//长方体构造函数{height=h;width

7、=w;length=len;}intBox::volume()//计算长方体的体积{return(height*width*length);}例3.2当类中无构造函数时,编译系统自动生成一个缺省构造函数,但它不会给类的数据成员初始值。intmain(){Boxbox1(12,25,30);//定义对象box1cout<<"box1体积="<

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

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

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