私はこのような構造体を持っています
struct foo {
vector<int> myvector;
};
ここで、foo へのポインターを作成し、サイズを変更していくつかの要素をベクターに挿入します。
foo *myfoo = new foo;
myfoo->myvector.resize(100);
myfoo->myvector.push_back(0);
myfoo->myvector.push_back(1);
... // and so on
ここで、myfoo がスコープ外になる前に、それに割り当てられたメモリの割り当てを解除する必要があります。
delete myfoo;
私の質問は、これで myvector も解放されるかどうかです。myvector のサイズが変更されたので、STL ライブラリはおそらくヒープにコンテナーを割り当てるため、この特定のクエリがあります。したがって、myfoo を解放するときに、myvector に割り当てられたメモリがリークすることは望ましくありません。