实验五 构造函数与析构函数

实验五 构造函数与析构函数

ID:14137744

大小:47.00 KB

页数:5页

时间:2018-07-26

实验五 构造函数与析构函数_第1页
实验五 构造函数与析构函数_第2页
实验五 构造函数与析构函数_第3页
实验五 构造函数与析构函数_第4页
实验五 构造函数与析构函数_第5页
资源描述:

《实验五 构造函数与析构函数》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、实验五构造函数与析构函数一、实验类型设计型二、实验目的1、实验目的(1)掌握构造函数和析构函数的特点、功能以及函数的调用方法。(2)分析和使用VC++的debug调试功能跟踪观察类的构造函数、析构函数的执行顺序。三、上机准备1、实验室安装VC++6.0软件。2、构造函数的定义和使用方法、析构函数的概念与作用。四、实验内容与步骤1、建立一个点(Point)类,设计构造函数和析构函数对类对象进行初始化和撤销操作。提示与分析:(1)建立默认无参构造函数,初始化Point中的坐标成员(X,Y)为0,注意其函数名与类名相同。(2)建立析构函数,在屏幕上显示析构函

2、数执行信息。注意其函数名前的~符号。(3)建立重载构造函数,包含两个坐标参数x和y。(4)建立拷贝构造函数,参数为Point类对象的引用。例如,Point(Point&p){X=p.getX();Y=p.getY();}(5)参考程序#includeclassPoint{private:intX,Y;public:Point()//默认构造函数{X=0;Y=0;cout<<"constructorcalled.";}Point(intx,inty)//重载构造函数{X=x;Y=y;cout<<"constructorcall

3、ed.";}~Point()//析构函数{cout<<"destructorcalled.";}intgetX(){returnX;}intgetY(){returnY;}};voidmain(){Pointp1(5,7),p2;cout<<"p1("<

4、(frequency)、电压(voltage)等私有数据成员,还有公有成员函数run()和stop()。其中,Brand为枚举类型CPU_Brand,frequency为整型数,voltage为浮点型,Type为字符数组。观察构造函数和析构函数的调用顺序。提示与分析:(1)定义枚举类型enumCPU_Brand{Intel=1,AMD};(2)声明和定义CPU类,包含品牌(Brand)、频率(frequency)、电压(voltage)等私有数据成员。例如,private:intBrand;intfrequency;floatvoltage;(3)声明

5、和定义公有成员函数run()、stop(),用来输出提示信息。例如,public:voidrun();voidstop();(4)声明和定义构造函数进行对象初始化。CPU(CPU_Brandbrand,intfre,floatvol);(5)建立main()函数,在函数体中建立一个CPU类对象,并调用run和stop方法。例如,CPUcpu(Intel,400,3.0);cpu.run();cpu.stop();(6)调试操作步骤:1)按下快捷键F11(StepInto)进入单步执行状态,程序开始运行,且光标停在main()函数的入口处。2)按下快捷键

6、F10(StepOver),光标下移,程序准备执行CPU对象的初始化。3)按下快捷键F11,程序准备执行CPU类的构造函数。4)连续按快捷键F10,观察构造函数。5)此时程序准备执行CPU对象的run()函数,按下快捷键F11,程序进入run()成员函数,连续按快捷键F10,直到回到main()函数。6)参照上述的方法继续执行程序,观察程序的执行顺序。(7)参考程序#includeenumCPU_Brand{Intel=1,AMD};classCPU{private:CPU_Brandbrand;intfrequency;flo

7、atvoltage;public:CPU(CPU_Brandbra,intfre,floatvol){brand=bra;frequency=fre;voltage=vol;cout<<"CreateaCPU."<

8、.run();cpu.stop();}(8)思考:①什么时候执行构造函数?②什么时候执行析构函

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

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

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