我目前有一個奇怪的問題與程序segfaulting,但我不能夠發現錯誤。我認爲這個問題歸結爲這個問題。C++:複製到解除引用的指針
struct S {int a; vector<sometype> b;}
S s1;
// fill stuff into a and b
S* s2 = new S();
*s2 = s1;
難道是最終的複製在某些方面是非法的嗎?我現在很困惑... 謝謝
我目前有一個奇怪的問題與程序segfaulting,但我不能夠發現錯誤。我認爲這個問題歸結爲這個問題。C++:複製到解除引用的指針
struct S {int a; vector<sometype> b;}
S s1;
// fill stuff into a and b
S* s2 = new S();
*s2 = s1;
難道是最終的複製在某些方面是非法的嗎?我現在很困惑... 謝謝
如果sometype
在其用戶定義的複製構造函數和/或賦值運算符中有一個錯誤,您將會得到此行爲。您提供的代碼是完全合法的。
對不起,代碼看起來對我來說很好,除非某些邪惡隱藏在'sometype'下
你能解釋一下你在做什麼? – ckv 2010-06-09 09:12:11
是丹尼爾,我不得不重寫一些不適當的設計庫:( – bbb 2010-06-09 09:15:41
對不起,我刪除了評論,但我的意思是代碼很醜,但是不完整。 – 2010-06-09 09:16:30