C++实验三 构造函数和析构函数题目+答案
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验三构造函数和析构函数
班级:B135A2 学号: 201322688 姓名:杨弘成绩:
一.实验目的
1.理解构造函数和析构函数作用;
2.掌握各种类型的构造函数和析构函数的使用;
3.掌握构造函数和析构函数的调用顺序。
二.使用的设备和仪器
计算机+Windows XP +Visual C++6.0
三.实验内容及要求
1.阅读程序,写出运行结果,然后上机运行,将机器运行结果与人工运行的结果进行比较,并对每一行输出做出分析。
(1)
#include
using namespace std;
class MyClass
{
public:
MyClass();
MyClass(int xx);
MyClass(int xx,int yy);
MyClass(MyClass &);
void Display();
void Set(int, int);
~ MyClass();
private:
int x,y;
};
MyClass:: MyClass()
{
cout<<"执行无参构造函数:" ;
x=0;y=0;
cout<<"x="< } MyClass:: MyClass(int xx) { cout<<"执行一个参数构造函数:" ; x=xx;y=0; cout<<"x="< } MyClass:: MyClass(int xx,int yy) { cout<<"执行两个参数构造函数:" ; x=xx;y=yy; cout<<"x="< } MyClass:: MyClass(MyClass &a) { cout<<"执行复制构造函数:" ; x=a.x;y=a.y; cout<<"x="< } void MyClass:: Display() { cout<<"执行显示函数:" ; cout<<"x="< } void MyClass:: Set(int xx=0,int yy=0) { cout<<"执行设置函数:" ; x=xx;y=yy; cout<<"x="< } MyClass:: ~MyClass () { cout<<"执行析构函数:" ; cout<<"x="< } void main() { MyClass a(12,34); a.Set(20); a.Display(); MyClass b(a); b.Display(); MyClass c; MyClass d(222); { MyClass e(788,453); d.Display(); } c.Display(); } (2) #include using namespace std; class A { public: A(int x=100,double y=1.2){a=x;b=y;} void show(char *pt)