pop_back () 操作。----------------------------------------------#include <vector> using namespace std; void main(void) { vector<int> array; array.push_back(1); array.push_back(2); array.push_back(3); array.push_back(4); array.push_back(5); vector<int>::iterator itr = array.begin(); while (itr != array.end) { if (*itr == 3)array.erase(itr);//删除值为3的元素 ++itr; } } //若是最后一个可用array.pop_back()-------------------删除所有偶数项,并打印出删除的项1. vector/queue 正确方法1:void erase(vector<int> &v){ for(vector<int>::iterator vi=v.begin();vi!=v.end();) { if(*vi % 2 == 0) { cout << "Erasing " << *vi << endl; vi = v.erase(vi); } else ++vi; }}正确方法2:void erase2(vector<int> &v){ for(vector<int>::reverse_iterator ri=v.rbegin();ri!=v.rend();) { if(*ri % 2 == 0) { cout << "Erasing " << *ri << endl; v.erase((++ri).base()); //erase()函数期待的是正向iterator,故而这里要调 //用base()函数将逆向iterator转换为正向的 } else ++ri; }}