首页 > STL 阅读:89,944

STL教程:C++ STL快速入门(非常详细)

STL 是“Standard Template Library”的缩写,中文译为“标准模板库”。STL 是 C++ 标准库的一部分,不用单独安装。

C++ 对模板(Template)支持得很好,STL 就是借助模板把常用的数据结构及其算法都实现了一遍,并且做到了数据结构和算法的分离。例如,vector 的底层为顺序表(数组),list 的底层为双向链表,deque 的底层为循环队列,set 的底层为红黑树,hash_set 的底层为哈希表。

更多关于 STL 的介绍请猛击:STL是什么

这套 C++ STL 入门教程非常详细,旨在让您快速学会标准模板库的使用。读者需要具备 C++ 基础,并了解C++模板的用法。
第1章 string类
1.C++ string
2.auto_ptr智能指针
3.basic_string
4.string成员函数
5.string构造函数和析构函数
6.C++获取字符串长度
7.C++获取字符串元素
8.C++字符串比较
9.C++字符串修改和替换
10.C++字符串输入输出
11.C++字符串查找
12.C++ string支持迭代器
13.C++ string支持配置器
第2章 序列容器
1.序列式容器
2.C++ array
3.array元素的获取
4.array迭代器
5.array元素的比较
6.C++ vector
7.vector的容量和大小
8.vector获取(访问)元素
9.vector迭代器及用法
10.vector添加(增加)元素
11.vector插入元素
12.vector删除元素
13.deque的使用、创建及初始化
14.deque获取元素
15.deque添加和删除元素
16.deque修改元素
17.list的使用、创建和初始化
18.list增加和插入元素
19.list删除元素
20.list元素的排序和合并
21.list访问(获取)元素
22.forward_list用法
23.自定义迭代器
第3章 容器适配器
1.C++ stack
2.C++ queue
3.C++ priority_queue
4.C++堆
5.C++序列容器存储智能指针
6.优先级队列存储智能指针
第4章 map容器
1.C++ map
2.C++ map的创建
3.C++ map插入数据
4.C++ map构造元素
5.C++ map获取元素
6.C++ map删除元素
7.C++ pair
8.C++ tuple
9.C++ multimap
10.C++ 自定义比较函数
11.C++ hash
12.C++ unordered_map
13.C++ unordered_map初始化
14.C++ unordered_map插入元素
15.C++ unordered_map获取元素
16.C++ unordered_map删除元素
17.C++ unordered_multimap
第5章 set容器
1.C++ set
2.C++ set初始化
3.C++ set添加、删除和访问元素
4.C++ set用法
5.C++ set迭代器
6.C++ set保存指针
7.C++ multiset
8.C++ unordered_set
9.C++ unordered_set插入元素
10.C++ unordered_set查找元素
11.C++ unordered_set删除元素
12.C++ set_union
13.C++ set_intersection
14.c++ set_difference
15.C++ includes
第6章 C++常用算法
1.C++ sort
2.C++ stable_sort
3.C++ partial_sort
4.C++ nth_element
5.C++ is_sorted
6.C++ merge和inplace_merge
7.C++ find
8.C++ find_if
9.C++ find_if_not
10.C++ find_first_of
11.C++ adjacent_find
12.C++ find_end
13.C++ search
14.C++ search_n
15.C++ partition
16.C++ partition_copy
17.C++ partition_point
18.C++ binary_search
19.C++ lower_bound
20.C++ upper_bound
21.C++ equel_range
22.C++ all_of、any_of及none_of
23.C++ equal
24.C++ mismatch
25.C++ lexicographical_compare
26.C++ next_permutation
27.C++ prev_permutation
28.C++ is_permutation
29.C++ copy_n
30.C++ copy_if
31.C++ copy_backward
32.C++ reverse_copy
33.C++ unique
34.C++ rotate
35.C++ rotate_copy
36.C++ move
37.C++ swap_ranges
38.C++ remove函数
39.C++ fill和fill_n
40.C++ generate和generate_n
41.C++ transform
42.C++ replace
第7章 随机数
1.C++随机数
2.概率、分布和熵
3.C++ 随机数生成
4.C++随机数生成器
5.C++ uniform_int_distribution
6.C++ uniform_real_distribution
7.C++ generate_canonical
8.C++ normal_distribution
9.C++ lognormal_distribution
10.C++ discrete_distribution
11.piecewise_constant_distribution
12.C++ piecewise_linear_distribution
13.C++ binomial_distribution
14.C++ 随机数生成器和随机数引擎
15.C++线性同余法
16.C++梅森旋转算法
17.C++带进位的线性同余法
第8章 流迭代器
1.C++输入流迭代器
2.C++输出流迭代器
3.C++重载插入运算符和提取运算符
4.流迭代器实现文件操作
5.流缓冲区迭代器
6.string流
第9章 使用数值、时间和复数
1.C++ iota
2.C++ accumulate
3.C++ inner_product
4.C++ adjacent_difference
5.C++ partial_sum
6.C++ min_element、max_element和minmax_element
7.C++ valarray
8.C++ 适用于valarray对象的运算符
9.C++ valarray获取对象
10.C++ gslice
11.C++ duration
12.C++ complex