Effective STL 01 如何选择容器
************************************************
时间:2013年06月08日
作者:常保龙
地点:核所C105
************************************************
如何选择容器?
1、如果容器中的数据内存布局需要兼容C,只能使用vector
2、如果不希望容器底层使用引用计数,就不要使用string,因为string的实现是用引用计数的,可以考虑使用vector<char>
3、如果很在意查找速度的话,则首先选择散列容器,然后是排序的vector,最后是标准的关联容器
C++容器
标准STL序列容器:vector、list、deque、string
标准STL关联容器:set、multiset、map、multimap
非标准序列容器:slist(单向链表)、rope(重型字符串)
非标准关联容器:hash_set、hash_multiset、hash_map、hash_multimap;
vector<char>可以作为string的替代品
vector作为标准关联容器的替代品,有时vector可以再时间和空间上都表现得比标准关联容器好
集中标准非STL容器:数组、bitset、valarray、stack、queue、priority_queue
补充:软件开发 , C++ ,