小程序:关于list的疑问
#include<iostream>
#include<list>
using namespace std;
int main()
{
int a[]={0,1,1,2,3,5,8,13,21,34,55,89};
const size_t len=sizeof(a)/sizeof(a[0]);
list<int> l(a,a+len);
list<int>::iterator iter1=l.begin();
while(iter1!=l.end())
{
if((*iter1)%2==1)
l.erase(iter1);
++iter1;
}
return 0;
}
这个程序错在哪里,?