泛型算法: find();搜索无序(unordered)集合中是否存在某值,存在返回iterator指向它,不存在返回iterator指向last binary_search();用于有序(sorted)集合的搜索,找到返回true,否则返回false;比find();更有效率,因为find();是线性搜索 cout();返回数值相同的个数 search();查找子序列,存在返回iterator指向此子序列的头,不存在返回iterator指向容器尾 max_element();传入一对iterator,返回里面的最大值
Function Object: 算数运算:
plus< type >,minus< type >,negate< type >,multiplies< type >,divides< type >,modules< type >
关系运算: less< type >,less_equal< type >,greater< type >,greater_equal< type >,equal_to < type>,not_equal_to< type> 逻辑运算: logical_and< type>,logical_or< type>,logical_not< type>
binder adapter(绑定适配器) 对function object的参数绑定至某特定值(一般为某参数),这样就能使(binary)二元function object转换为(unary)一元。 bind1st:将值绑定至第一操作数 bind2nd:将值绑定至第二操作数 negator:取反例如:notl ( bind2nd ( less< int >, 10))就是取大于十的数 例如 在容器的操作中,常常涉及到“赋值”操作,此时我们就需要考虑目标容器的大小,否则谁造成越界,但固定大小虽然是安全的,却不方便,也不是STL的方法,这里就要用到插入适配器 insertion adapter了C++规定了三个这种adapter back_inserter()用push_back()取代了assignment运算符 inserter()以insert()取代assignment运算符,参数为两个,一个是容器,一个是iterator,指向要插入的位置 front_inserter()以push_front()取代assignment运算符,只适用于list和deque 例如filter函数可以这样调用: 没地方记笔记,只能写在这了。。
|