基本クラスポインタの配列を実行するこの単純なループがあります。
Object * objects[2];
objects[0] = new GreenObject;
objects[1] = new RedObject;
objects[2] = new BlueObject;
for (int i = 0; i < 3; ++i) {
cout << i << " ";
objects[i]->info();
}
i
デバッグモードでは、info()
メソッドが呼び出されると、出力直後のループの3回目の反復でプログラムがクラッシュします。リリースモードではそのようなことは起こらず、正常に実行されています。他の派生クラスを使用してもロックされるため、オブジェクトの問題ではありません。
Windows764ビットでのGCC4.4.0
何か案は?