写一个迭代器封装list的push_front()使得:用法不同,功能相同
2012-05-10 08:42
351 查看
#include <list> #include <string> #include <iostream> using namespace std; template <typename TYPE> class Iterator { public: Iterator( TYPE &c) : curr( &c ) { } Iterator<TYPE> &operator = (const typename TYPE::value_type value ) { curr->push_front( value ); return *this; } private: TYPE* curr; }; int main( void ) { list<string> lis; Iterator<list<string> > obj( lis ); obj = "OK2002.com"; obj = "OK1500.com"; obj = "OK1700.com"; for ( list<string>::iterator iter=lis.begin( ); iter != lis.end( ); ++iter ) { cout << *iter << endl; } system( "PAUSE" ); return EXIT_SUCCESS; } /*----------- OK1700.com OK1500.com OK2002.com 请按任意键继续. . . -----------------------*/
相关文章推荐
- Arraylist和linkedlist的区别,hashmap和hashtable的区别,hashmap和hashset的相同与不同,hashcode的用法
- 把list中根据相同属性(合为一个),计算不同属性转化为另外一个list
- STL使用list的成员函数push_back和push_front插入一个元素到list中
- 自己封装的一个简单的倒计时功能
- 自己封装的一个简单的倒计时功能实例
- 遍历list.有相同的从list中remove掉,并存放到一个新的list中
- 同一个tomcat APP中的 Log4j 的App root System property 不能相同,需要设置不同,不然会出现以下错误。解决方法在错误中标明了。
- 把一个数组分成三份,两个分割点不算进求和中,使得每份的和要相同
- jdbc中如何返回一个封装任意类对象的list
- 对于“检测内存错误”这一用法,我们可以用 valgrind 或者 dmalloc 或者 efence 来达到相同的目的,专业的除错工具比自己山寨一个内存检查器要靠谱。
- 将list里面相同属性(如:名字)分割为不同的list保存到map里去
- 浏览器 游戏大厅 聊天工具 每个对象新建一个控件 不同控件里的控件名字不要相同
- 12个球,外形相同,其中有一个球重量与其余11球不同,如何使用天平尽量少次数的测量找出这个小球且判别它比正常球轻还是重
- 一个DataGrid多次绑定不同数据的时候我的用法
- 封装一个搜索的功能
- js实用功能-在同一个页面切换不同的div功能
- 同一个ImageView显示不同的图片--->level-list
- 如何在一个页面中动态放置多个Droppable来接受不同的Draggable?(accept参数的用法)
- struts2 类型转换器用法 -------------封装list中的javabean
- java--第十周--任务一 封装一类对象,功能是随机产生一个2000年后的年份,并输出该年2月的日历页,需处理闰年的问题