新浪微博 Github

08 2010 档案

摘要:#include<algorithm> //C++标准库算法#include<functional>//仿函数和函数配接器1.nonmodifying algorithm 非变动性算法(不改动元素,即只能读取)2.modifying algorithm 变动性算法3.removing algorithm 移除性算法4.mutating algorithm 变序性算法5.sorting algorithm 排序算法6,sorted range algorithm已序区间算法7.numeric algorithm 数值算法difference_type用于测定距离,区别正负 阅读全文
posted @ 2010-08-31 11:41 xiazdong 阅读(144) 评论(0) 推荐(0) 编辑
摘要: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<set<T>::iterator,bool result> set::insert(elem);//result为插入是否成功7.循环移除元素时,小心迭代器是否存在8.map插入方法之三:c.insert(map<T1, 阅读全文
posted @ 2010-08-25 22:51 xiazdong 阅读(117) 评论(0) 推荐(0) 编辑
摘要: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(++next,end,beg,op);}调用find_if时,op创建一个副本给find_if,在find_if函数内部不管怎么变,在... 阅读全文
posted @ 2010-08-21 14:03 xiazdong 阅读(273) 评论(0) 推荐(0) 编辑
摘要:1.node-based container such as <lists><sets><multisets><maps><multimaps> 如果节点构造失败,则不变2.关联式容器插入多个元素时,失败无法恢复原状3.erase操作肯定成功4.以array为基础的如vector,deque,安插失败,不恢复原状。 阅读全文
posted @ 2010-08-21 11:25 xiazdong 阅读(131) 评论(0) 推荐(0) 编辑
摘要:当将一个数A插入容器,只是将A的副本插入容器,因此不能在不同容器内管理同一个对象。 //value语义解决方法:插入的是指针(尽量是智能型指针)即可 //reference语义 阅读全文
posted @ 2010-08-21 11:03 xiazdong 阅读(190) 评论(0) 推荐(0) 编辑
摘要:仿函数保存状态方法:1.reference 【显式声明】(略)2.for_eachfor_each 返回op的现在状态namespace std{ template<class Iterator,class Operation> Operation for_each(Iterator act, Iterator end,Operation op) { while(act!=end){ op(*act); ++act; } return op; ... 阅读全文
posted @ 2010-08-21 10:48 xiazdong 阅读(219) 评论(0) 推荐(0) 编辑
摘要:1.迭代器配接器(1)inserter iterator 1.back_inserter(container) //调用push_back(); 2.front_inserter(container) //调用push_front(); 3.inserter(container,position); //唯一可用于关联式容器时,position起引导作用对于insert迭代器,*pos==pos;赋值操作能被视为安插操作。*iter 传回iter;iter=value; 安插value++iter和iter++都是传回iter;生成back_inerter 迭代器方法:1.back_inser 阅读全文
posted @ 2010-08-20 16:19 xiazdong 阅读(174) 评论(0) 推荐(0) 编辑
摘要:#include<map>1.任何事只比较键值,实值只是陪衬2.用operator[]即可以索引,也可以插入元素 coll[key]=value;//如果没有键值为key的元素,就创建并插入.3.coll[key]返回实值。4.multimap不允许[]索引。 阅读全文
posted @ 2010-08-20 14:53 xiazdong 阅读(94) 评论(0) 推荐(0) 编辑
摘要:#include<memory>1.防止两个指针指向同一个对象2.拷贝构造函数参数与平常的不同是因为:通过调用拷贝构造函数会转移原对象的拥有权3.const auto_ptr //不能转移所有权4.auto_ptr_ref比作一个“中介”,进行二次转换。 阅读全文
posted @ 2010-08-19 13:58 xiazdong 阅读(109) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示