-
#include <list>
using namespace std;
class A
{
public:
A(int i)
{
m = i;
}
~A()
{
m= 0;
}
int m;
int Get(){
return m;
}
};
int main(int argc, char* argv[])
{
list<A*> mylist;
mylist.push_back(new A(1));
mylist.push_back(new A(2));
mylist.push_back(new A(3));
mylist.push_back(new A(4));
for (list<A*>::iterator it = mylist.begin(); it != mylist.end();)
{
int size = mylist.size();
A *p = *it;
if ( 2 == p->Get())
{
mylist.erase(it++);
delete p;
}else{
++it;
}
}
return 1;
}
共1页 1







