- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
实验5类与对象的应用(4学时)
一、实验目的:
1掌握类和对象的概念、定义和使用方法。
2掌握不同特性对象成员的访问方法,以及this指针的概念和使用方法。
3掌握构造函数和析构函数的使用方法。
二、实验内容:
1.写出下列程序的执行结果,然后上机进行验证。
#include iostream.h
#include iomanip.h
class X
{
int n;
public:
X( );
X(int a);
~X( );
};
X::X( ):n(3)
{
cout调用构造函数 X()setw(8)nendl;
}
X::X(int a ):n(6)
{
n=n+a;
cout调用构造函数 X(int a)setw(5)nendl;
}
X::~X()
{
cout调用析构函数 nendl;
}
void main()
{
X a;
cout------a-------endl;
X b(7);
cout------b--------endl;
cout析构函数执行情况:endl;
}
⑴提示
通过设置断点,以单步执行的方式跟踪构造函数、析够函数的执行顺序。所谓断点就是程序运行时需要暂时停止执行的语句。程序员可以为程序需要观察的语句设置断点,以“单步执行”的方式跟踪和检查程序当前的各种状态值。
在C++程序文件中设置断点,并以“单步执行”的方式跟踪程序执行的过程和检查变量的值的操作步骤是:
在主窗口中打开源文件“ex10_8”,并对该文件进行编译和链接;
把光标移动到需要设置断点的语句,单击鼠标右键,弹出如图10-8所示的快捷菜单,单击“Insert/Remove Breakpoint”菜单项,在语句左边空白处出现一个红色的圆点,再选择一次为为取消断点。也可以选择工具栏上的按钮,单击一次设置断点,再单击一次为取消断点。注意,断点语句应该是有变量的语句。可以在程序中设置多个断点,但断点不能太多。
图10-8 添加断点的快捷菜单
单击“组建/开始调试/Go”菜单项或按F5功能键,如图10-9所示,或按工具栏上的按钮,系统开始执行程序。进入调试状态后,菜单栏上的“组建”菜单项变为“调试”菜单项,主窗口中出现调试工具栏(如果没有出现的化,将鼠标位于工具栏上单击右键,在下拉菜单项中选择“调试”,调试工具栏就会出现)。执行到断点语句“cout调用构造函数 X()setw(8)nendl;”时,程序的执行进入调试状态,在主窗口底部自动弹出变量窗口,显示断点出现的变量的值。如图10-10所示。通过主窗口的菜单“查看/调试窗口”或通过组合键Alt+3~Alt+8打开各个调试窗口,以查看当前程序的执行情况。
若要停止调试程序,可以单击“调试/Stop Debugging”菜单项,或单击工具栏上的按钮,系统停止调试程序。
图10-9 单步调试
图10-10 单步调试状态下的主窗口
⑵要求
在上述程序中设置断点,观察构造函数、析构函数的执行顺序及变量n值的变化;
对象作为类的数据成员,测试构造函数和析构函数的调用顺序;定义类CTs类,有两个数据成员,分别是类CStudent、类CTeacher的对象。定义如下:
classCStudent
{
public:
CStudent() //学生类构造函数
{
coutconstructing studentendl;
}
~CStudent() //学生类析构函数
{
coutdenstructing studentendl;
}
};
classCTeacher
{
public:
CTeacher() //教师类构造函数
{
coutconstructing teacherendl;
}
~CTeacher() //教师类析构函数
{
coutdestructing teacherendl;
}
};
class CTs
{
CStudent student; //学生对象数据成员
CTeacher teacher; //教师对象数据成员
public:
CTs() //教师学生类构造函数
{
coutcostructingtsendl;
}
~CTs() //教师学生类析构函数
{
coutdestructing tsendl;
}
};
⑶写实验报告
2.定义一个学生通讯录类,数据成员包括:学号、姓名、院系、通讯地址、电话;成员函数包括:输出各个数据成员的值,分别设置和获取各个数据成员的值。
⑴提示
由于姓名、院系和通讯地址的数据长度是可变的,可使用动态的数据结构。电话可以用一个字符数组存放。将数据成员均定义
您可能关注的文档
- 软件项目管理目录要领.doc
- 浅谈各种排序和查找比较.doc
- 第六章 UNIX命令格式.doc
- 第2章 maya 试题.doc
- 第六章 Unix Linux基础.doc
- 第七章 vcalendar中文版.doc
- 软件工程标准文档模板—概要设计说明书要领.doc
- 如何查看电脑硬件情况(组图)教材.doc
- 如何查看内存颗粒型号教材.docx
- 怎样在大机上创建新文件.doc
- 国家公园生态环境保护与生态旅游产品创新与市场拓展研究报告.docx
- 2025年潮玩IP授权合作风险与机遇评估报告.docx
- 2025年绿色供应链管理对节能减排的影响报告.docx
- 高效工作的七大习惯.pptx
- 2025年在线教育行业职业教育与就业市场对接分析及未来五到十年发展趋势报告.docx
- 新能源行业2025年研发人员流动趋势与新能源企业竞争力提升报告.docx
- 绿色印刷技术升级与创新分析:2025年行业未来发展前景报告.docx
- 新能源行业品牌文化差异处理与传播效果优化报告.docx
- 新能源行业2025年客户需求分析及智能产品创新报告.docx
- 传统文化复兴浪潮中,2025年乡村民宿设计策略探讨.docx
最近下载
- GBT45001-2020SO45001:2018 职业健康安全管理体系要求及使用指南.pdf VIP
- 个人业绩相关信息采集表含政治表现、最满意、主要特点、不足.pdf VIP
- 部编版六年级上册道德与法治教案:感受生活中的法律知识.docx VIP
- 货运保险与货损理赔通道整合2025年应用前景.docx VIP
- 《飞机构造基础》课件——第一章 飞机结构.pptx VIP
- 中医治疗“慢脾风”医案37例.doc
- 小学科学新教科版二年级上册第一单元 造房子教案(共6课)(2025秋).docx VIP
- 2025年广西公需科目第二套答案.docx VIP
- 设备供货配送方案.docx VIP
- 现代农业发展情况课件.ppt VIP
文档评论(0)