次のことを行うと、メモリリークの問題が発生するのではないかと心配しています。
(サンプルコード)
class myItem //random container stuff mostly. All primatives.
{
int index;
char* name;
int val1;
int val2;
};
class vecList
{
vector< myitem* > *myVec;
void delete()
{
MyVec->erase(std::remove_if(myVec->begin(), MyVec->end(), IsMarkedToDelete), MyVec->end()); //leak here?
}
};
ポインターの場合、消去はメモリを解放しませんよね?remove_if を使用していなければ、ポインターを破棄する前に delete を呼び出すことができます。この場合、どうすればよいでしょうか?スマートポインター? それらをすべて再実装したくないし、boost ライブラリを追加したくありません。
ありがとう!