#include <iostream>
#include <vector>
#include <string>
#include <cstring>
#include <iterator>
#include <list>
using namespace std;
int main()
{
int ia[]={0,1,1,2,3,5,8,13,21,55,89};
vector<int> ivec(ia,ia+11);
list <int> ilist(ia,ia+11);
while (iter!=ivec.end())
{
if(*iter%2==0)
iter=ivec.erase(iter); //iter自动指向下一个位置的迭代器
else
iter++;
}
auto iterl=ilist.begin();
while (iterl!=ilist.end())
{
if(*iterl%2)
iterl=ilist.erase(iterl);
else
iterl++;
}
cout<<"vector ivec应该剩下的是奇数:";
for(auto i: ivec)
cout<<i<<" ";
cout<<endl;
cout<<"list ilist应该剩下的是偶数:";
for(auto i: ilist)
cout<<i<<" ";
cout<<endl;
system("pause");
return 0;
}
C++primer第5版课后练习习题答案9.26
最新推荐文章于 2022-04-29 06:00:00 发布