【发布时间】:2013-05-18 13:49:13
【问题描述】:
您好,我想创建一个新的类变量,它是一个指针,并通过复制构造函数对其进行初始化。虽然我知道复制构造函数是如何通过引用工作的,但我不知道该怎么做。你能帮助我吗? 例如我有这个定义:
class A{
public:
int a;
private:
};
在另一个代码段中,我执行以下操作:
A *object= new A;
A->a=10;
A *newobject= new A(*object);
但我遇到了分段错误。你能帮助我吗? 我也试过了:
A *newobject= new A(&(*object));
但它也不起作用。
【问题讨论】:
-
请提交完整的编译样本。 Foo vs A? A.a vs object->a?
-
Works fine 如果您删除了明显的错误。重要的问题是你为什么要这样做?
-
为了使队列不使用 STL 完全动态
标签: copy-constructor pass-by-pointer