- 博客(10)
- 资源 (7)
- 收藏
- 关注
原创 STL算法概述
#include //C++标准库算法#include //仿函数和函数配接器1.nonmodifying algorithm 非变动性算法 (不改动元素,即只能读取)2.modifying algorithm 变动性算法3.removing algorithm 移除性算法4.mutating algorithm 变序性算法5.sorting algorithm 排序算法6,sorted range
2010-08-31 11:41:00 1028
原创 迭代器辅助函数
<br />advance(iterator pos,int n); <br />不检查迭代器是否超过end(), 无返回值。<br /> <br />iterator_traits<InputIterator>::difference_type distance(pos1,pos2);<br />difference_type用于定义距离。<br /> <br />void iter_swap(pos1,pos2); //迭代器型别不一定相同,但pos1和pos2的内容可相互赋值<br />
2010-08-29 13:39:00 828
原创 容器的注意事项
1.全局函数:find(begin,end,value); //删除是value的所有元素2.在迭代器使用时务必注意超尾。3.list::remove(elem); //删除elem的所有元素4.int set::erase(elem); //删除elem的所有元素 5.iterator find(elem); //找到第一个elem。6.pair::iterator,bool result> set::insert(elem); //result为插入是否成功7.循环移除元素时,小心迭代器是
2010-08-25 22:51:00 713
原创 remove_if的误区
<br />template<class ForwIter, class Predicate>ForwIter std::remove_if(ForwIter beg, ForwIter end, Predicate op){ beg=find_if(beg,end,op); if(beg==end){ return beg; } else { ForwIter next=beg; return remove_copy_if
2010-08-21 14:03:00 827
原创 STL异常规定【】
<br />1.node-based container such as <lists><sets><multisets><maps><multimaps> 如果节点构造失败,则不变<br />2.关联式容器插入多个元素时,失败无法恢复原状<br />3.erase操作肯定成功<br />4.以array为基础的如vector,deque,安插失败,不恢复原状。
2010-08-21 11:25:00 812
原创 STL的value语义和reference语义【待更新】
<br />当将一个数A插入容器,只是将A的副本插入容器,因此不能在不同容器内管理同一个对象。 //value语义<br /> <br />解决方法:插入的是指针(尽量是智能型指针)即可 //reference语义
2010-08-21 11:03:00 1037
原创 仿函数
namespace std{ template Operation for_each(Iterator act, Iterator end,Operation op) { while(act!=end){ op(*act); ++act; } return op; }}
2010-08-21 10:48:00 649
原创 adapter
inserter iterator 1.back_inserter(container) //调用push_back(); 2.front_inserter(container) //调用push_front(); 3.inserter(container,position); //唯一可用于关联式容器时,position起引导作用stream iterator istream_iterator(cin),istream_iterator() //读入输入流的T类型的数
2010-08-20 16:19:00 597
原创 map
<br />#include<map><br />1.任何事只比较键值,实值只是陪衬<br />2.用operator[]即可以索引,也可以插入元素 coll[key]=value; //如果没有键值为key的元素,就创建并插入.<br />3.coll[key]返回实值。<br />4.multimap不允许[]索引。<br /> <br />
2010-08-20 14:53:00 569 1
原创 auto_ptr
<br />#include<memory><br />1.防止两个指针指向同一个对象<br />2.拷贝构造函数参数与平常的不同是因为:通过调用拷贝构造函数会转移原对象的拥有权<br />3.const auto_ptr //不能转移所有权<br />4.auto_ptr_ref比作一个“中介”,进行二次转换。<br /> <br />
2010-08-19 13:58:00 690
Struts国际化源代码
2012-01-27
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人