エントリーの編集

エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
記事へのコメント0件
- 注目コメント
- 新着コメント
このエントリーにコメントしてみましょう。
注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています

- バナー広告なし
- ミュート機能あり
- ダークモード搭載
関連記事
virtualの伝播 | 闇夜のC++
このBoxクラスをpublic継承しても安全でしょうか? class Box : public Object { public: Box(); ~Box()... このBoxクラスをpublic継承しても安全でしょうか? class Box : public Object { public: Box(); ~Box(); };正解は……この情報だけでは何とも言えない。でした。 一見するとダメっぽいと感じる人も多いかと思います。特にc++のことをちょっと詳しくなった頃の人はまずデストラクタに目が行くかと思います。 デストラクタの前にvirtualが付いていませんね。virtualで無いデストラクタは継承してはいけないということはc++で最初に学ぶことの一つです。 もう少し情報を足して、Objectクラスの定義も見てみましょう。 class Object { public: virtual ~Object(); };シンプルです。 virtualが定義されたデストラクタが定義されている模様です。 これではっきりしました。Boxはpublic継承しても安全