- 1、本文档共6页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
实验⼆
实验02:类与对象
实验学时:6+(6)
实验类型:验证
实验要求:必修
⼀、实验⽬的
类是C++扩展数据类型,可以封装不同类型的数据成员和函数成员,类是⾯向对象程序设计的基础。本次实验内容包括⾯向对
象的基本概念、构造函数与析构函数,从实际问题抽象出类等,通过实验要求:
1、理解类和对象的概念;
2、了解C++在⾮⾯向对象⽅⾯对C功能的扩充与增强。
3、初步掌握使⽤类和对象编制C++程序。
4、掌握对象数组、对象指针和string类的使⽤⽅法。
5、掌握使⽤对象、对象指针和对象引⽤作为函数参数的⽅法。
6、掌握类对象作为成员的使⽤⽅法。
7、掌握静态数据成员和静态成员函数的使⽤⽅法。
8、理解友元的概念和掌握友元的使⽤⽅法。
⼆、实验内容
1、输⼊下列程序。
#include
usingnamespacestd;
classCoordinate
{
public:
Coordinate(intx1,inty1)
{x=x1;
y=y1;}
Coordinate(Coordinatep);
~Coordinate()
{coutDestructoriscalled\n;}
intgetx()
{returnx;}
intgety()
{returny;}
private:
intx,y;
};
Coordinate::Coordinate(Coordinatep)
{
x=p.x;
y=p.y;
coutCopy-initializationConstructouriscalled\n;
}
intmain()
{
Coordinatep1(3,4);
Coordinatep2(p1);
Coordinatep3=p2;
coutp3=(
return0;
}
【运⾏结果截图】:
将Coordinator类中带有两个参数的构造函数进⾏修改,在函数体内增添下列语句:cout”constructoriscalled.\n”;
【运⾏结果截图】:
【运⾏结果分析】:
按下列要求进⾏调试:在主函数体内,添加下列语句:
Coordinatorp4;
Coordinatorp5(2);
调试程序时会出现什么错误?为什么?如何对已有的构造函数进⾏适当修改?【运⾏结果截图】:
【解释】:
经过以上第(2)步和第(3)步的修改后,结合运⾏结果分析:创建不同的对象
时会调⽤不同的构造函数。
【运⾏结果分析】:p1是调⽤有两个参数的构造函数,p2和p3都是p1的拷贝,但他们调⽤的是使⽤对象引⽤作为函数参数的
构造函数,p4和p5都是调⽤两个参数的构造函数,p4由于没有给出实参,所以使⽤默认参数。
2、设计⼀个4*4魔⽅程序,让魔⽅的各⾏值的和等于各列值的和,并且等于两对⾓线的和,例如以下魔⽅,各⾏各列及两对
⾓线值的和都是64.
313525
9211915
17131123
727291
【提⽰】:求4*4的魔⽅的⼀般步骤如下:
设置初始魔⽅的起始值和相邻元素之间的差值。例如上述魔⽅的初始魔⽅的起始值(first)和相邻元素之间的差值(step)分
别为:first=1;step=2;
设置初始魔⽅元素的值,例如上述魔⽅的初始魔⽅为:
1357
9111315
17192123
25272931
⽣成最终魔⽅。⽅法如下:
求最⼤元素值与最⼩元素值的和sum,该实例的sum是:1+31=32
⽤32减去初始魔⽅所有对⾓线上元素的值,然后将结果放在原来的位置,这样就可以求得最终魔⽅。
本题的魔法类magic的参考框架如下:
classmagic
{public:
voidgetdata();
voidgetfirstmagic();
voidgeneratemagic();
voidprintmagic();
intm[4][4];
intstep;
intfirst;
intsum;
}
【运⾏结果截图】:
3、设计⼀个⽤来表⽰直⾓坐标系的Location类,在主程序中创建类Location的两个对象A和B,要求A的坐标点在第3象限,B
的坐标点在第2象限,分别采⽤成员函数和友元函数计算给定两个坐标点之间的距离,要求按如下格式输出结果:
A(x1,y1),B(x2,y2),
Distance1=d1
Distance2=d2
其中:x1、y1、x2、y2为指定坐标值,d1和d2为两个坐标点之间
您可能关注的文档
- 必威体育精装版人教版九年级英语全册Unit9单元综合考试练习及答案(精品试卷).pdf
- 廊坊市社区工作者考试题库2023 .pdf
- 2024年北京市成考(专升本)计算机应用基础预测试题含解析 .pdf
- 如何开发单体药店的条件和流程 .pdf
- 国家开放大学电大《计算机组网技术》机考2套标准题库及答案3 .pdf
- 【教育学习文章】高三政治选修1《中国社会主义建设道路的探索》知识点.pdf
- 2023年度注册会计师(CPA)《税法》近年真题汇编(含答案) .pdf
- 培训补贴指引 .pdf
- LinkedAIOps开启AIOps智能运维 .pdf
- 2023高考甲卷语文卷子解析 .pdf
- 2024年陕西咸阳亨通电力(集团)有限公司供电服务业务部直聘用工招聘145人笔试参考题库附带答案详解 .docx
- 2024年中建四局土木工程有限公司校园招聘笔试参考题库附带答案详解 .docx
- 2024年四川雅茶贸易有限公司公开招聘和考察聘用人员3人笔试参考题库附带答案详解 .docx
- 2024年中国烟草总公司辽宁省公司公开招聘拟录用人员(166人)笔试参考题库附带答案详解 .docx
- 2024江苏连云港中诚物业管理有限公司招聘工作人员1人笔试参考题库附带答案详解 .docx
- [毕节]2025年贵州毕节市引进人才649人笔试历年参考题库附带答案详解.docx
- 2024年度中国东航技术应用研发中心有限公司校园招聘笔试参考题库附带答案详解 .docx
- 2024年福建省厦门盐业有限责任公司春季人才招聘1人笔试参考题库附带答案详解 .docx
- 2024年山东省环保发展集团绿能有限公司职业经理人招聘2人笔试参考题库附带答案详解 .docx
- 2024年安徽滁州郊源阳光电力维修工程有限责任公司招聘41人(第一批次)笔试参考题库附带答案详解 .docx
文档评论(0)