vector | list | map |
1、构造; vector<int> v1; //无参构造 | 1、构造 list<int>L1; //默认构造; | 1、构造 map<int,int>m; //默认构造 |
2、vector容量、大小; if (v1.empty()) //resize 重新指定大小 ,若指定的更大,默认用0填充新位置,可以利用重载版本替换默认填充 | 2、大小操作; if (L1.empty()) //重新指定大小 | 2、大小操作 if (m.empty()) |
3、vector插入、删除 //尾插 //尾删 //插入(位置迭代器) //删除(位置迭代器) //清空 | 3、插入、删除 //尾插 //头插 //尾删 //头删 //插入(位置迭代器) //删除 //移除 | 3、插入和删除 m.insert(make_pair(2, 20)); //删除 m.erase(3);//删除容器中值为key的元素 |
4、数据的存取; for (int i = 0; i < v1.size(); i++) | 4、数据存取 不支持随机访问[],.at(); cout << "第一个元素为: " << L1.front() << endl; | 4、查找和统计 //查找 //统计 |
5、互换空间; v1.swap(v2); | m.swap(m2); | |
6、排序 sort(d.begin(), d.end()); | 5、反转和排序 不支持标准算法,只能使用内置的成员函数; //反转容器的元素 //排序 L.sort(myCompare); //指定规则,从大到小 | 5、排序 //默认从小到大排序 |
STL中最常见的三种容器vector、list、map对比分析
最新推荐文章于 2023-02-04 20:41:44 发布