#include <list>
#include <iostream>
#include <string>
using namespace std;
typedef struct _a
{
int i;
string str;
}peng;
int main(void)
{
list <peng> mylist;
peng tmp;
tmp.i=1;
tmp.str="peng";
mylist.push_back(tmp);

tmp.i=2;
tmp.str="hai";
mylist.push_back(tmp); tmp.i=3;
tmp.str="lu";
mylist.push_back(tmp); 
list <peng>::iterator it;
for(it=mylist.begin();it!=mylist.end();it++)
{
cout<<it->i<<endl;  //error occur
cout<<it->str<<endl;
mylist.erase(it); }
return 3;
}