摘要:
一、常用的遍历算法 for_each: 用指定函数依次对指定范围内所有元素进行迭代访问。该函数不得修改序列中的元素。 函数定义。For_each(begin, end, func); template<class _InIt, class _Fn1> inline _Fn1 for_each(_In 阅读全文
posted @ 2018-10-13 18:11
gd_沐辰
阅读(540)
评论(0)
推荐(0)
摘要:
1)预定义函数对象基本概念:标准模板库STL提前定义了很多预定义函数对象,#include <functional> 必须包含。 3)关系函数对象 等于equal_to<Tpye> equal_to<string> stringEqual; sres = stringEqual(sval1,sval 阅读全文
posted @ 2018-10-13 17:52
gd_沐辰
阅读(496)
评论(0)
推荐(0)
摘要:
函数对象和谓词定义 函数对象: 重载函数调用操作符的类,其对象常称为函数对象(function object),即它们是行为类似函数的对象。一个类对象,表现出一个函数的特征,就是通过“对象名+(参数列表)”的方式使用一个类对象,如果没有上下文,完全可以把它看作一个函数对待。 这是通过重载类的oper 阅读全文
posted @ 2018-10-13 17:44
gd_沐辰
阅读(369)
评论(0)
推荐(0)
摘要:
算法 1)算法部分主要由头文件<algorithm>,<numeric>和<functional>组成。 2)<algorithm>是所有STL头文件中最大的一个,其中常用到的功能范围涉及到比较、交换、查找、遍历操作、复制、修改、反转、排序、合并等等。 3)<numeric>体积很小,只包括几个在序 阅读全文
posted @ 2018-10-13 17:39
gd_沐辰
阅读(564)
评论(0)
推荐(0)
摘要:
C++模板是容器的概念。 本质:所有容器提供的都是值(value)语意,而非引用(reference)语意。容器执行插入元素的操作时,内部实施拷贝动作。所以STL容器内存储的元素必须能够被拷贝(必须提供拷贝构造函数)。 1)除了queue与stack外,每个容器都提供可返回迭代器的函数,运用返回的迭 阅读全文
posted @ 2018-10-13 17:30
gd_沐辰
阅读(126)
评论(0)
推荐(0)
摘要:
1.Map和multimap容器 1)map是标准的关联式容器,一个map是一个键值对序列,即(key,value)对。它提供基于key的快速检索能力。 2)map中key值是唯一的。集合中的元素按一定的顺序排列。元素插入过程是按排序规则插入,所以不能指定插入位置。 3)map的具体实现采用红黑树变 阅读全文
posted @ 2018-10-13 17:27
gd_沐辰
阅读(265)
评论(0)
推荐(0)
摘要:
1.Set和multiset容器 1)set是一个集合容器,其中所包含的元素是唯一的,集合中的元素按一定的顺序排列。元素插入过程是按排序规则插入,所以不能指定插入位置。 2)set采用红黑树变体的数据结构实现,红黑树属于平衡二叉树。在插入操作和删除操作上比vector快。 3)set不可以直接存取元 阅读全文
posted @ 2018-10-13 16:50
gd_沐辰
阅读(319)
评论(0)
推荐(0)
摘要:
1.优先级队列priority_queue 1)最大值优先级队列、最小值优先级队列 2)优先级队列适配器 STL priority_queue priority_queue<int, deque<int>> pq; priority_queue<int, vector<int>> pq; pq.em 阅读全文
posted @ 2018-10-13 16:17
gd_沐辰
阅读(216)
评论(0)
推荐(0)
摘要:
1.List容器 1) list是一个双向链表容器,可高效地进行插入删除元素。 2)list不可以随机存取元素,所以不支持at.(pos)函数与[]操作符。It++(ok) it+5(err) 3)头文件。#include <list> 2.list对象的默认构造 list采用采用模板类实现,对象的 阅读全文
posted @ 2018-10-13 15:57
gd_沐辰
阅读(300)
评论(0)
推荐(0)

浙公网安备 33010602011771号