我是新来的面向对象的编程,这可能是一个愚蠢的问题,但我不明白为什么使用A类代码比B类更好,如果你想创建一个对象的副本。使用拷贝构造函数有什么好处?
class A {
int num;
public:
A(const A &ref) : num(ref.num) {};
};
class B {
int num;
public:
B(B *ptToClass) : num(ptToClass->num) {};
};
如果我得到这个权利,拷贝构造函数是在A级使用
http://stackoverflow.com/a/18611518/1012759它被标准禁止接受指针。 – CyberGuy
@CyberGuy这个问题说“复制对象”,而不是“创建复制构造函数”。您可以“复制对象”而无需复制构造函数。 – Yakk
你确定A班比较好吗?这两个类看起来和我很相似,一个用无意义的拷贝构造函数,另一个用带指针的隐含构造函数。 – anatolyg