int main() { LISTINT test; for (int i = 0; i < 5; i++) { test.push_back(i+1); } //show LISTINT::iterator it = test.begin(); for (; it != test.end(); it++) { cout << *it << "\t";//12345 } cout << endl; //reversr_show LISTINT::reverse_iterator rit = test.rbegin(); // 专门还有这个迭代器[逆向迭代器] for (; rit != test.rend(); rit++) { cout << *rit << "\t";//54321 } cout << endl; getchar(); return 0; }
int main(void) { LISTINT listOne;//创建一个名为listOne的list对象 LISTINT::iterator i;//声明i为迭代器 listOne.push_front (2);//从list容器前面添加数据 listOne.push_front (1); listOne.push_back (3);//从list容器后面添加数据 listOne.push_back (4); cout<<"listOne.begin()--- listOne.end():"<<endl;//从后面显示数据 for (i = listOne.begin(); i != listOne.end(); ++i) cout << *i << ""<<endl; //从后向后显示listOne中的数据 LISTINT::reverse_iterator ir; cout<<"listOne.rbegin()---listOne.rend():"<<endl; for (ir =listOne.rbegin(); ir!=listOne.rend();ir++) { cout << *ir << ""; } cout << endl; //使用STL的accumulate(累加)算法 int result = accumulate(listOne.begin(), listOne.end(),0); cout<<"Sum="<<result<<endl; cout<<"------------------"<<endl; //-------------------------- //用list容器处理字符型数据 //-------------------------- //用LISTCHAR创建一个名为listOne的list对象 LISTCHAR listTwo; //声明i为迭代器 LISTCHAR::iterator j; //从前面向listTwo容器中添加数据 listTwo.push_front ('A'); listTwo.push_front ('B'); //从后面向listTwo容器中添加数据 listTwo.push_back ('x'); listTwo.push_back ('y'); //从前向后显示listTwo中的数据 cout<<"listTwo.begin()---listTwo.end():"<<endl; for (j = listTwo.begin(); j != listTwo.end(); ++j) cout << char(*j) <<" "; cout << endl; //使用STL的max_element算法求listTwo中的最大元素并显示 j=max_element(listTwo.begin(),listTwo.end()); cout << "The maximum element in listTwo is:"<<char(*j)<<endl; return 0; }