回答編集履歴
2
誤字修正
answer
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
* AllocSample(LPCWSTR, LPCWSTR)が使われた場合:指定された領域をデストラクタで勝手にdelete[]しようとするので大問題.(素直にSetStr_1()とSetStr_2()を呼べば良いと思う)
|
2
2
|
* コピーコンストラクタを使った場合:デストラクタでコピー元が使っていた領域を勝手にdelete[]しようとするので大問題.同じ領域に多重にdelete[]するのはダメ.
|
3
|
-
* (今は
|
3
|
+
* (今は記述が無いだけかもしれないけども)operator=も面倒みてあげないとコピーコンストラクタと同じ結果になるので注意が必要.
|
4
4
|
|
5
5
|
あと,SetStr_1()とSetStr_2()では,引数のnullチェックを入れると良いかと.
|
1
operator=の話を追記
answer
CHANGED
@@ -1,4 +1,5 @@
|
|
1
1
|
* AllocSample(LPCWSTR, LPCWSTR)が使われた場合:指定された領域をデストラクタで勝手にdelete[]しようとするので大問題.(素直にSetStr_1()とSetStr_2()を呼べば良いと思う)
|
2
2
|
* コピーコンストラクタを使った場合:デストラクタでコピー元が使っていた領域を勝手にdelete[]しようとするので大問題.同じ領域に多重にdelete[]するのはダメ.
|
3
|
+
* (今は既述が無いだけかもしれないけども)operator=も面倒みてあげないとコピーコンストラクタと同じ結果になるので注意が必要.
|
3
4
|
|
4
5
|
あと,SetStr_1()とSetStr_2()では,引数のnullチェックを入れると良いかと.
|