一.构造,拷贝和析构
| ContType <Elem> c | 创建一个空容器,其中没有任何元素 |
| ContType <Elem> c1(c2) | 创建一个同种类形容器的一个copy |
| ContType <Elem> c(beg,end) | 创建一个容器,以区间[beg,end)做为元素初值 |
| c.~ContType <Elem>() | 销毁所有元素,并释放内存 |
二.与大小相关的操作
| c.size() | 返回当前的元素数量 |
| c.empty() | 返回 bool 型,判断容量是否为0。 等同与 size()==0, 但可能更快 |
| c.max_size() | 返回可容纳元素的最大数量,很大一个数 |
例子:
- #include <iostream>
- #include <vector>
- using namespace std;
- int main(int argc, char* argv[])
- {
- vector<int> col(10);
- cout << col.size() << endl; //10
- if (col.empty()) //bool 型
- {
- cout << "empty"<<endl;
- }
- cout<<col.max_size()<<endl; //很大一个数
- return 0;
- }
三.比较操作
| c1 == c2 | 判断 c1 是否等于 c2 |
| c1 != c2 | 判断 c1 是否不等于 c2 |
| c1 < c2 | 判断 c1 是否小于 c2 |
| c1 > c2 | 判断 c1 是否大于 c2 |
| c1 <= c2 | 判断 c1 是否小于等于 c2 |
| c1 >= c2 | 判断 c1 是否大于等于 c2 |
四.赋值操作
| c1 = c2 | 将c2的全部元素赋值给c1,c1与c2必须是同种类型 |
五.交换操作
| c1.swap(c2) | 将c1和c2元素互换 |
| swap(c1,c2) | 同上,是个全局函数 |
六.迭代器相关
| c.begin() | 返回一个随机存取迭代器,指向第一个元素 |
| c.end() | 返回一个随机存取迭代器,指向最后元素的下一个位置 |
| c.rbegin() | 返回一个逆向迭代器,指向逆向迭代的第一元素,也就是最后一个元素 |
| c.rend() | 返回一个逆向迭代器,指向逆向迭代的最后元素的下一个位置,也就是第一个元素的前一个位置 |
注意:*c.end与*c.rend都是没有定义的。
七.插入与删除
| c.insert(pos,elem) | 在pos位置前插入一个elem副本,并返回新元素位置 |
| c.erase(beg,end) | 移除 [beg,end) 区间内的所有元素,返回下一元素的位置 |
| c.clear() | 移除 所有元素,将容器清空 |
本文详细介绍了标准容器的基本操作,包括构造、拷贝、析构、大小相关操作、比较、赋值、交换、迭代器使用及元素的插入与删除等内容。
4982

被折叠的 条评论
为什么被折叠?



