《C++面向对象程序设计》实验报告.doc

《C++面向对象程序设计》实验报告.doc

ID:56099263

大小:115.00 KB

页数:14页

时间:2020-06-19

《C++面向对象程序设计》实验报告.doc_第1页
《C++面向对象程序设计》实验报告.doc_第2页
《C++面向对象程序设计》实验报告.doc_第3页
《C++面向对象程序设计》实验报告.doc_第4页
《C++面向对象程序设计》实验报告.doc_第5页
资源描述:

《《C++面向对象程序设计》实验报告.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、《C++面向对象程序设计》实验报告实验序号:2      实验项目名称:类和对象学  号姓  名专业实验地点指导教师吴芸实验时间2013-3-21一、实验目的及要求(1)理解类和对象的概念;(2)了解C++在非面向对象方面对C功能的扩充与增强。(3)初步掌握使用类和对象编制C++程序。(4)掌握对象数组、对象指针和string类的使用方法。(5)掌握使用对象、对象指针和对象引用作为函数参数的方法。(6)掌握类对象作为成员的使用方法。(7)掌握静态数据成员和静态成员函数的使用方法。(8)理解友元的概念和掌握友元的使用方法。二、实验设备(环境)及要求MicorsoftVisualC++6.

2、0三、实验内容与步骤(题目、算法和结果描述)1、输入下列程序。#includeusingnamespacestd;classCoordinate{public:Coordinate(intx1,inty1){x=x1;y=y1;}Coordinate(Coordinate&p);~Coordinate(){cout<<"Destructoriscalled";}intgetx(){returnx;}intgety(){returny;}private:intx,y;};Coordinate::Coordinate(Coordinate&p){x=p.x;y=p.

3、y;cout<<"Copy-initializationConstructouriscalled";}intmain(){Coordinatep1(3,4);Coordinatep2(p1);Coordinatep3=p2;cout<<"p3=("<

4、数在主函数中只被调用了一次,其他的都是调用使用对象引用作为函数参数的构造函数。(3)按下列要求进行调试:在主函数体内,添加下列语句:Coordinatorp4;Coordinatorp5(2);调试程序时会出现什么错误?为什么?如何对已有的构造函数进行适当修改?【运行结果截图】:【解释】:把带有两个参数的构造函数改为带有默认参数的构造函数,那么后添加的两条语句编译的时候就不会出错了。(1)经过以上第(2)步和第(3)步的修改后,结合运行结果分析:创建不同的对象时会调用不同的构造函数。【运行结果分析】:p1是调用有两个参数的构造函数,p2和p3都是p1的拷贝,但他们调用的是使用对象引用作

5、为函数参数的构造函数,p4和p5都是调用两个参数的构造函数,p4由于没有给出实参,所以使用默认参数,即x=1,y1;而p5给出一个实参,所以x=2,y=1.2、设计一个4*4魔方程序,让魔方的各行值的和等于各列值的和,并且等于两对角线的和,例如以下魔方,各行各列及两对角线值的和都是64.313525921191517131123727291【提示】:求4*4的魔方的一般步骤如下:(1)设置初始魔方的起始值和相邻元素之间的差值。例如上述魔方的初始魔方的起始值(first)和相邻元素之间的差值(step)分别为:first=1;step=2;(2)设置初始魔方元素的值,例如上述魔方的初始魔

6、方为:135791113151719212325272931(3)生成最终魔方。方法如下:1)求最大元素值与最小元素值的和sum,该实例的sum是:1+31=322)用32减去初始魔方所有对角线上元素的值,然后将结果放在原来的位置,这样就可以求得最终魔方。本题的魔法类magic的参考框架如下:classmagic{public:voidgetdata();voidgetfirstmagic();voidgeneratemagic();voidprintmagic();private:intm[4][4];intstep;intfirst;intsum;}【运行结果截图】:3、设计一个用

7、来表示直角坐标系的Location类,在主程序中创建类Location的两个对象A和B,要求A的坐标点在第3象限,B的坐标点在第2象限,分别采用成员函数和友元函数计算给定两个坐标点之间的距离,要求按如下格式输出结果:A(x1,y1),B(x2,y2),Distance1=d1Distance2=d2其中:x1、y1、x2、y2为指定坐标值,d1和d2为两个坐标点之间的距离。【提示】:类Location的参考框架如下:classLocation{

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

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

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