STL学习总结之初入容器
2012-05-09 21:47
281 查看
1. STL基本观念
2. vector将其元素置于一个dynamicarray中加以管理。
3. 所有顺序容器提供push_back成员函数,所有容器提供size成员函数。
4. deque用dynamic array实现。提供push_front成员函数。
5. list采用双向链表实现。提供push_front、push_back、front、pop_front、back、pop_back成员函数。
6. string相当于vector<char>,使用方法同vector;array不是容器类型,也不提供迭代器类型,通过下标模拟迭代器,但兼容STL算法;动态数组在c++中不再需要,因为vector相当于动态数组。
7. 关联容器通常都有二叉树实现,具体就是红黑树。set、multiset、map、multimap实现自动排序。
8. 容器适配器共三个:提供特殊用途,stack、queue、priority_queue。
9. 迭代器是一种智能指针,提供了指针的部分通用操作。最终要的迭代器是begin和end;
迭代器有iterator(可读写)和const_iterator(只读)两种。每种容器定义自身的迭代器。
10. 关联容器没有push_back成员函数,通过insert成员函数完成插入操作。
11. Vector<vector<int>>注意右边的两个>>之间要有空格,否则会被编译器识别为右移位运算符。
12. make_pair函数返回key/value对组。
13. map可以使用[]操作符,multimap不可以使用[]操作符。
14. 迭代器分类:双向迭代器和随机存取迭代器。
双向迭代器:提供简单的++与—操作
随机存取迭代器:类似于指针,提供与指针对等的操作。
2. vector将其元素置于一个dynamicarray中加以管理。
3. 所有顺序容器提供push_back成员函数,所有容器提供size成员函数。
4. deque用dynamic array实现。提供push_front成员函数。
5. list采用双向链表实现。提供push_front、push_back、front、pop_front、back、pop_back成员函数。
6. string相当于vector<char>,使用方法同vector;array不是容器类型,也不提供迭代器类型,通过下标模拟迭代器,但兼容STL算法;动态数组在c++中不再需要,因为vector相当于动态数组。
7. 关联容器通常都有二叉树实现,具体就是红黑树。set、multiset、map、multimap实现自动排序。
8. 容器适配器共三个:提供特殊用途,stack、queue、priority_queue。
9. 迭代器是一种智能指针,提供了指针的部分通用操作。最终要的迭代器是begin和end;
迭代器有iterator(可读写)和const_iterator(只读)两种。每种容器定义自身的迭代器。
10. 关联容器没有push_back成员函数,通过insert成员函数完成插入操作。
11. Vector<vector<int>>注意右边的两个>>之间要有空格,否则会被编译器识别为右移位运算符。
12. make_pair函数返回key/value对组。
13. map可以使用[]操作符,multimap不可以使用[]操作符。
14. 迭代器分类:双向迭代器和随机存取迭代器。
双向迭代器:提供简单的++与—操作
随机存取迭代器:类似于指针,提供与指针对等的操作。
相关文章推荐
- C++ STL容器学习总结
- [C++再学习系列] STL容器删除操作总结
- 【C++ STL学习之一】容器的共通能力和共通操作总结
- STL容器学习总结
- stl容器学习总结
- [C++再学习系列] STL容器删除操作总结
- 【C++ STL学习之一】容器的共通能力和共通操作总结
- STL容器学习总结
- STL容器学习总结
- stl容器学习总结
- C++ STL学习之一:容器的共通能力和共通操作总结
- STL容器学习总结(二)
- STL容器学习总结
- STL容器学习总结
- STL学习总结之<容器>
- STL容器学习总结
- STL容器学习总结
- 【C++ STL学习之一】容器的共通能力和共通操作总结
- STL序列式容器学习总结
- STL容器学习总结