题目描述
某个类包含一个整型数据成员.程序运行时若输入0表示用缺省方式定义一个类对象;输入1及一个整数表示用带一个参数的构造函数构造一个类对象;输入2及一个整数表示构造2个类对象,一个用输入的整数构造,另一个用前一个对象构造。试完成该类的定义和实现。
输入
测试数据的组数 t
第一组数
第二组数
…
输出
第一个对象构造输出
第二个对象构造输出
…
输入样例1
3
0
1 10
2 20
输出样例1
Constructed by default, value = 0
Constructed using one argument constructor, value = 10
Constructed using one argument constructor, value = 20
Constructed using copy constructor, value = 20
代码
#include <iostream>
using namespace std;
class Construction
{
private:
int x;
public:
Construction()
{
x = 0;
cout << "Constructed by default, value = 0" << endl;
}
Construction(int num)
{
x = num;
cout << "Constructed using one argument constructor, value = " << x << endl;
}
Construction(const Construction &con)
{
x = con.x;
cout << "Constructed using copy constructor, value = " << x << endl;
}
};
int main()
{
int t;
cin >> t;
while(t --)
{
int temp;
cin >> temp;
if(temp == 0)
{
Construction mycon;
}
else if(temp == 1)
{
int num;
cin >> num;
Construction mycon(num);
}
else
{
int num;
cin >> num;
Construction mycon1(num);
Construction mycon2(mycon1);
}
}
return 0;
}