第章构造函数和析构函数ppt课件.ppt
《第章构造函数和析构函数ppt课件.ppt》由会员分享,可在线阅读,更多相关《第章构造函数和析构函数ppt课件.ppt(32页珍藏版)》请在三一办公上搜索。
1、第10章 构造函数和析构函数,10.1 构造函数作用:定义对象时,可以简单地给对象赋初值。10.1.1 如何定义构造函数构造函数作为类中的函数出现。构造函数的名字就是类名。可以在函数定义中初始化对象。例:方法一:在类中定义构造函数格式:(参数),方法二:在类外定义构造函数:(参数),例10-1:定义构造函数#include“string.h”class person private:char Name8;ansigned Age:7;unsigned Sex:1;public:person(char*name,int age,char sex)strcopy(Name,name);Age=ag
2、e;Sex=(sex=m?0:1);,person();/函数重载 void Setname(char*name)strcopy(Name,name);void Setage(int age)Age=age;void Setsex(char sex)Sex=(sex=m?0:1);void Getname(char*name)(strcpy(name,Name);)int Getage()retuen Age;char Getset()return(Sex=0?m,f);,例11-2 使用构造函数完成数据的输入输出#include iostream.hclass time public:tim
3、e()/构造函数 hour=0;minute=0;sec=0;,void set_time();/函数原型 void show_time();/函数原型 private:int hour;int minute;int sec;,void time:set_time()cinhour;cinminute;cinsec;void time:show_time()couthour;minute:secendl;,main()time t1;t1.set_time();t1.show_time();time t2;t2.show_time();return 0;,程序执行过程:定义对象t1,同时自动执
4、行构造函数,对类中的成员赋初值。执行t1.set_time()函数,从键盘上给t1对象成员赋值。执行t1.show_time()函数,输出t1对象数据成员值。定义对象t2,同时自动执行构造函数,对类中的成员赋初值。执行t2.show_time()函数,输出t2对象数据成员值。,问题:如果不给对象成员赋值(第2步不执行),输出结果是什么?如果没有构造函数,不给对象成员赋值,输出结果又是什么?构造函数如何定义?(类内和类外)time()/在类内进行函数声明 time:time()/在类外定义hour=0;minute=0;sec=0;,4.构造函数如何使用?5.构造函数的名字是什么?6.什么时间调
5、用构造函数?7.构造函数有没有返回值?8.用户不定义构造函数,C+系统会自动生成一个构造函数,该函数是否有内容?9.带参数的构造函数和不带参数的构造函数使用上有什么不同?10.函数重载和构造函数重载的各自作用和不同地方是什么?11构造函数中的初始值是否一定为0?12为什么要定义重载构造函数?(定义构造函数之后,不允许使用系统默认构造函数,若要使用必须从新显示说明),10.1.2 构造函数与对象初始化 格式:对象(实参);或 对象;例10-3:利用构造函数对对象初始化且输出#include iostream.h class demo int x,y;public:demo(int a,int b
6、)/建立构造函数 x=a;y=b;demo()/构造函数重载 x=10;y=20;,void print()coutx=xendly=yendl;void main()demo d1(3,4);/定义对象并初始化 d1.print();/对象和方法 demo d2(7,9);/定义对象初始化 d2.print();/对象和方法 demo d3;/定义对象初始化(空)d3.print();,10.1.3 构造函数和new运算符 new是用来创建动态变量,还可以动态创建对象。例:以下例子是创建对象,其对象是由指针表示#include“102.h”.void main()demo*p1=new De
7、mo(3,5);/定义动态对象指针且对象初始化 p1-print();demo*p2=new Demo();p2-print();delete p1;/释放或撤消动态对象 delete p2;,说明:定义动态对象可以使用另一种方法:demo*p1;p1=new demo()或者:demo*p1;p1=new demo(3,5)释放对象使用delete,10.1.4 使用默认(缺省)参数的构造函数1.使用默认参数的构造函数的好处2.默认参数的构造函数的定义方法例10-4方法一:#include iostream.hclass time public:time();/显式声明一个无参(默认)的构造
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 构造 函数 ppt 课件
![提示](https://www.31ppt.com/images/bang_tan.gif)
链接地址:https://www.31ppt.com/p-5081974.html