C++primer第5版課後練習習題答案9.26

#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;
}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章