我担心通过执行以下操作会遇到内存泄漏问题:
(示例代码)
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 库。
谢谢!