読者です 読者をやめる 読者になる 読者になる

迷いませんか?

プログラミング、電子工作、ゲーム・・・etc、色々やるけど中途半端なブログです。

仮想クラスをデリートするときのワーニング

ゲーム作成をしてたら、ワーニングが発生したので一応直し方
正直、有名だとは思うけど

warning: deleting object of abstract class type ’xxx ’ 
   which has non-virtual destructor will cause undefined behaviour

というワーニングが発生した
これはxxxという仮想クラスであるクラスをdeleteしようとすると発生した
こちらの場合はファクトリーメソッドを使用していたため、仮想クラスに派生クラスを入れていた

まあわざわざ備忘録として書くほどでもないと思うけれども
そのまま書いているように、

仮想クラスの型である’xxx ’をdeleteしていますが、
仮想でないデストラクタを持っているため、未定義の動作を起こすかもしれない

みたいなことです なので、デストラクタをvirtualにするだけでワーニングは消えた

P.S.
赤軸は使いやすいけれども
タイプミスをしかけてやめようとしても間に合わなかったり
底打ちしないように心がけるとタイプできてないことがある
青軸も使ってみたいわ〜