【初心者歓迎】C/C++室 Ver.72【環境依存OK】at TECH【初心者歓迎】C/C++室 Ver.72【環境依存OK】 - 暇つぶし2ch■コピペモード□スレを通常表示□オプションモード□このスレッドのURL■項目テキスト206:デフォルトの名無しさん 10/03/27 07:29:32 いや、そういう話じゃなくて、 配列newで要素数を格納するのはデストラクタ呼ぶループのためだから (new側は要素数が分かるので特に必要はないはず) デストラクタがなければPODじゃなくても配列newで要素数分確保する必然性はないよね、と まあ確保しても実害は無いから自分で配列newを実装する場合は無条件で確保すればいいんだけど デフォルトではどうなってんのかな、と 207:デフォルトの名無しさん 10/03/27 08:25:35 >>206 じゃあこういう事か ちなみにCodeGuard掛けてみたが何のエラーも出なかったので恐らく 問題ないと思われる class A { int i; }; int main() { char c[1000]; A* ap = new (c) A[100]; // ap->~A(); // なくても実害はない } 208:デフォルトの名無しさん 10/03/27 14:09:46 いや、どう見ても>>203が言いたいのは struct NonPod { int x; NonPod(): x(rand()) {} virtual int f() { return x; } }; みたいなものを new NonPod[n]; した時に、要素数を記録する領域を確保するのかどうか、だろ。 次ページ最新レス表示レスジャンプ類似スレ一覧スレッドの検索話題のニュースおまかせリストオプションしおりを挟むスレッドに書込スレッドの一覧暇つぶし2ch