程序实施时,为什么MyClass类的拷贝构造函数被调用的次数是4
程序执行时,为什么MyClass类的拷贝构造函数被调用的次数是4
[code=C/C++][/code]#include<iostream>
using namespace std;
class MyClass
{
public:
MyClass(int n){number=n;}
// 拷贝构造函数
MyClass(MyClass& other){number=other.number;}
~MyClass(){ }
private:
int number;
};
MyClass fun(MyClass p)
{
MyClass temp(p);
return temp;
}
int main()
{
MyClass obj1(10),obj2(0);
MyClass obj3(obj1);
obj2=fun(obj3);
return 0;
}
------解决方案--------------------
[code=C/C++][/code]#include<iostream>
using namespace std;
class MyClass
{
public:
MyClass(int n){number=n;}
// 拷贝构造函数
MyClass(MyClass& other){number=other.number;}
~MyClass(){ }
private:
int number;
};
MyClass fun(MyClass p)
{
MyClass temp(p);
return temp;
}
int main()
{
MyClass obj1(10),obj2(0);
MyClass obj3(obj1);
obj2=fun(obj3);
return 0;
}
------解决方案--------------------