class Testp
{
public:
};
std::vector<Testp*>m_pArray;
for(int i=0;i<10;i++)
{
m_pArray.push_back(new Testp());
}
for (vector<Testp*>::iterator iter=m_pArray.begin();iter!=m_pArray.end();++iter)
{
Testp* pp=(*iter);
delete pp;
{
public:
};
std::vector<Testp*>m_pArray;
for(int i=0;i<10;i++)
{
m_pArray.push_back(new Testp());
}
for (vector<Testp*>::iterator iter=m_pArray.begin();iter!=m_pArray.end();++iter)
{
Testp* pp=(*iter);
delete pp;
}
//一直以为这样就好了,结果还是内存泄露了
后来经过发帖求证,需要加下面一句话
vector<Testp*>().swap(m_pArray);
vector 中存放的是指针,那么当 vector 销毁时,那些指针指向的对象不会被销毁,那些内存不会被释放