教育资源为主的文档平台

当前位置: 查字典文档网> 所有文档分类> 论文> 其他论文> 构造函数与析构函数

构造函数与析构函数

上传者:网友
|
翻新时间:2023-08-06

构造函数与析构函数

实验目的

观察构造函数和析构函数的执行过程。

学习类的聚集使用方法。

使用VC++的debug调试功能观察程序流程,跟踪观察类的构造函数、析构函数、成员函数的执行顺序。

实验任务定义一个简单的Computer类,有数据成员芯片(cpu)、内存(ram)、光驱(cdrom)等等,有两个公有成员函数run、stop。cpu为CPU类的一个对象,ram为RAM类的一个对象,cdrom为CDROM类的一个对象,定义并实现这个类。(在实验三完成的程序的基础上继续做)

(选做)设计一个用于人事管理的People(人员)类。考虑到通用性,这里只抽象出所有类型人员都具有的属性:number(编号)、sex(性别)、birthday(出生日期)、id(身份证号)等等。其中“出生日期”定义为一个“日期”类内嵌子对象。用成员函数实现对人员信息的录入和显示。要求包括:构造函数和析构函数。(在实验三完成的程序的基础上继续做)

实验步骤使用debug调试功能观察程序ab4_1.cpp的运行流程,跟踪观察类的构造函数、析构函数、成员函数的执行顺序。参考程序如下:

//lab4_1.cpp

#include <iostream.h>

class CPU

{

private:

CPU_Rank rank;

int frequency;

float voltage;

public:

CPU (CPU_Rank r, int f, float v)

{

rank = r;

frequency = f;

voltage = v;

cout << "构造了一个CPU!" << endl;

}

~CPU () { cout << "析构了一个CPU!" << endl; }

CPU_Rank GetRank() const { return rank; }

int GetFrequency() const { return frequency; }

float GetVoltage() const { return voltage; }

void SetRank(CPU_Rank r) { rank = r; }

void SetFrequency(int f) { frequency = f; }

void SetVoltage(float v) { voltage = v; }

void Run() {cout << "CPU开始运行!" << endl; }

void Stop() {cout << "CPU停止运行!" << endl; }

};

void main()

{

CPU a(P6,300,2.

8);

a.Run();

a.Stop();

}

调试操作步骤如下:

单击Build | Start Debug | Step Into命令,或按下快捷键F11,系统进入单步执行状态,程序开始运行,一个DOS窗口出现,此时Visual Studio中光标停在main()函数的入口处;

从Debug菜单或Debug工具栏中单击Step Over,此时,光标下移,程序准备执行CPU对象的初始化;

单击Step Into,程序准备执行CPU类的构造函数;

连续单击Step Over,观察构造函数的执行情况,直到执行完构造函数,程序回到主函数;

此时程序准备执行CPU对象的run()方法,单击Step Into,程序进入run()成员函数,连续单击Step Over,直到回到main()函数;

继续执行程序,参照上述的方法,观察程序的执行顺序,加深对类的构造函数、析构函数、成员函数的执行顺序的认识;

再试试Debug菜单栏中别的菜单项,熟悉Debug的各种方法。

首先定义CPU类(可使用第二题中的CPU类)、RAM类、CDROM类。再定义Computer类:定义私有数据成员cpu、ram、cdrom,定义公有成员函数run、stop,可在其中输出提示信息。在主程序中定义一个Computer的对象,调用其成员函数,观察类对象及其成员变量的构造与析构顺序,以及成员函数的调用。程序名:lab4_2.cpp。

使用debug调试功能观察lab4_2.cpp程序的运行流程,跟踪观察类的构造函数、析构函数、成员函数的执行顺序,特别注意观察成员变量的构造与析构顺序。

下载文档

版权声明:此文档由查字典文档网用户提供,如用于商业用途请与作者联系,查字典文档网保持最终解释权!

网友最新关注

仅用半年我就考出了优异成绩
状物作文】我爱家乡的特产
给爸爸的一封信
我的好妈妈
松树的遗书
小升初,奥数和英语是敲门砖
发现了除去污渍的好方法
我爱家乡的特产
堆雪人
我的文具盒
我的妈妈
〈小抄写员〉缩写
告诉学弟学妹们一点经验
迷迷糊糊考入101,我是幸运儿
第一次去海上游泳
面试应该注意哪些问题?细数面试七忌
打工手册:面试题的错答与分析
求职兵法:面试十大难题的样板回答
有消息通知你…?学会解读“招聘语言”
面试第五阶段应注意哪些问题
自我介绍一下?精心设计面试开头5分钟
应对棘手问题,面试致胜的几个“诀窍”
面试应答技巧:把紧嘴巴 三思而答
外企面试常见问题及回答技巧
做好面试准备--人事经理最爱问的15个问题
如何应对用人单位特意设置的道具面试?
对症下药——去外企求职面试的成功法宝
这些问题如何回答?面试必备15问
IBM铺设蓝色之路
面试声音技巧
分析美术馆、公共艺术机构、艺术学院14%
浅论伦勃朗与维米尔绘画的差异性
澳门美术扫描
论走向现代英国美术300年
油画艺术中整体性之作用
国内女性油画家探索
国画大师向总理要酒喝
美术行业经济投资价值
小议民间美术的进展
对油画构图艺术剖析
论美术行业经济投资价值
油画艺术的色彩运用思索
巴蜀书法奇才蔡永成
油画艺术的主客观色彩转换
持之以恒的教研活动与民主和谐的教研氛围
《人物描写一组》美文赏析二
《刷子李》重难点分析
《刷子李》作家作品及写作背景
《人物描写一组》老师语录
《刷子李》教学设计二
《刷子李》重点字词的意思
《人物描写一组》随堂练习——基础篇
《刷子李》重点字词梳理
《人物描写一组》趣味故事
《刷子李》同步作文 写作指导
《人物描写一组》教学设计之二
《刷子李》老师语录
《刷子李》同步作文 训练素材
《人物描写一组》教学设计之一
《人物描写一组》美文赏析一