C ++:复制到解除引用的指针

时间:2010-06-09 09:09:39

标签: c++ copy pointers

我目前有一个奇怪的程序segfaulting问题,但我无法发现错误。我认为问题归结为此。

struct S {int a; vector<sometype> b;}
S s1;
// fill stuff into a and b
S* s2 = new S();
*s2 = s1;

难道最终的复制在某种程度上是非法的吗?我现在真的很困惑...... 感谢

2 个答案:

答案 0 :(得分:2)

如果sometype在其用户定义的复制构造函数和/或赋值运算符中存在错误,则会出现此行为。您提供的代码完全合法。

答案 1 :(得分:0)

对不起,代码对我来说很好,除非在'sometype'

下隐藏了一些邪恶的东西