c++vector详解
时间: 2023-10-25 13:08:46 浏览: 178
C++中的vector是一个动态数组,可以在运行时动态地增加或减少其大小。它提供了许多方便的方法来操作数组,例如在末尾添加元素、在任意位置插入元素、删除元素等等。下面是一些常用的vector操作:
1. 创建vector对象:可以使用默认构造函数创建一个空的vector对象,也可以使用带有初始值的构造函数创建一个包含初始值的vector对象。
```c++
// 创建一个空的vector对象
std::vector<int> v1;
// 创建一个包含初始值的vector对象
std::vector<int> v2 = {1, 2, 3};
```
2. 访问vector元素:可以使用下标运算符[]或at()方法来访问vector中的元素。
```c++
std::vector<int> v = {1, 2, 3};
// 使用下标运算符[]访问元素
int x = v[0]; // x = 1
// 使用at()方法访问元素
int y = v.at(1); // y = 2
```
3. 在末尾添加元素:可以使用push_back()方法在vector的末尾添加一个元素。
```c++
std::vector<int> v = {1, 2, 3};
// 在末尾添加一个元素
v.push_back(4); // v = {1,2, 3, 4}
```
4. 在任意位置插入元素:可以使用insert()方法在vector的任意位置插入一个元素。
```c++
std::vector<int> v = {1, 2, 3};
// 在第二个位置插入一个元素
v.insert(v.begin() + 1, 4); // v = {1, 4, 2, 3}
```
5. 删除元素:可以使用erase()方法删除vector中的一个或多个元素。
```c++
std::vector<int> v = {1, 2, 3};
// 删除第二个元素
v.erase(v.begin() + 1); // v = {1, 3}
// 删除第二个到第三个元素
v.erase(v.begin() + 1, v.begin() + 3); // v = {1}
```
6. 获取vector大小:可以使用size()方法获取vector中元素的数量。
```c++
std::vector<int> v = {1, 2, 3};
// 获取vector大小
int size = v.size(); // size = 3
```
7. 清空vector:可以使用clear()方法清空vector中的所有元素。
```c++
std::vector<int> v = {1, 2, 3};
// 清空vector
v.clear(); // v = {}
```
阅读全文