//D:奇怪的类复制
#include <iostream>
using namespace std;
class Sample {
public:
int v;
// 在此处补充你的代码
Sample(int n=0) :v(n) {}//这边如果不写n=0,那么需要一个无参构造函数
Sample(const Sample& s){v =s.v+2;}
//Sample():v(0) {};
};
void PrintAndDouble(Sample o)
{
cout << o.v;
cout << endl;
}
int main()
{
Sample a(5);
Sample b = a;//一次复制构造函数
PrintAndDouble(b);//复制构造函数生成一个临时变量
Sample c = 20;
PrintAndDouble(c);//同上
Sample d;
d = a;
cout << d.v;
return 0;
}
/*输入
无
输出
9
22
5
样例输入
None
样例输出
9
22
5*/