[過去ログ] 【初心者歓迎】C/C++室 Ver.100【環境依存OK】 [無断転載禁止]©2ch.net (1002レス)
前次1-
抽出解除 必死チェッカー(本家) (べ) 自ID レス栞 あぼーん

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
668
(1): デフォルトの名無しさん [sage] 2017/05/24(水) 13:51:37.65 ID:OqDgfclu(1) AAS
>>658
658(2): デフォルトの名無しさん [sage] 2017/05/23(火) 13:25:57.75 ID:YY4qnA2y(1) AAS
>>656
意図して作ったの?バグじゃなくて?
の話の場合、別に”string *のポインタで”継承したやつをdeleteしない限り大丈夫でしょ
>>651
651(2): デフォルトの名無しさん [sage] 2017/05/23(火) 00:42:13.85 ID:9/IkIyOw(1) AAS
ちょっとした確認なんだけどさ、
デストラクタが空っぽ (デフォルトデストラクタ) でもオブジェクトを後始末するための何らかの処理はするよね?

よくあるスライシングの問題で、

・クラス A をクラス B が継承している
・クラス A のデストラクタは virtual が付いていない
・クラス B のデストラクタはデフォルトデストラクタ
・クラス B はメンバ変数を持っていない
・B* を A* にキャストしたものを delete

という状況だと見かけ上はクラス B のオブジェクトには後始末すべきものは何もないように見えるけど、
デストラクタが呼ばれないのはやっぱあかんよな?
で言うところの
・B* を A* にキャストしたものを delete
これが問題になるんであって

B*からdeleteして中身もBなら問題にならないと思うけど
前次1-
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.039s