作成したものの複数のオブジェクトを含めたいクラスがあります。現在機能するコードは次のとおりです。
process.h:
private:
myObj *data;
process.cc:
data = new myObj[10];
ただし、コンストラクターに値を渡したいので、それをstd :: vectorに変換しようとしました(コンストラクターを変更して値を取得した後)。
process.h:
private:
std::vector<myObj> data;
process.cc:
for (int m=0; m<10; m++) data.push_back( myObj(1.2) );
実行時にクラッシュするようにしようとすると
*** glibc detected *** ... corrupted double-linked list: ... ***
また、gdbのバックトレースは、割り当てた他の配列用にメモリを解放しようとしたときに、デストラクタでエラーが発生したことを示しています。検索では、明らかなものは何も表示されませんでした。でいくつかの静的メンバー変数を使用していますがmyObj
、それが問題になる可能性がありますか?