std::vector动态数组添加数据
时间: 2024-07-03 13:00:46 浏览: 6
`std::vector` 是 C++ 标准库中的一个动态数组容器,它允许你在运行时动态地增加或减少元素的数量。在 `std::vector` 中添加数据非常直观,主要有两种方式:
1. **后追加(push_back)**:
- 使用 `push_back` 函数可以将一个元素添加到向量的末尾。例如:
```cpp
std::vector<int> vec;
vec.push_back(10); // 添加整数 10 到向量末尾
```
2. **直接赋值(assign)**:
- 如果你需要一次性添加多个元素,可以直接使用 `assign` 函数,它可以接受一个范围或另一个已初始化的容器作为参数:
```cpp
vec.assign({20, 30, 40}); // 添加一个包含 20, 30, 40 的整数序列到向量末尾
```
3. **扩展容量(reserve)和resize**:
- 有时预先知道将需要多少空间会很有用,这时你可以使用 `reserve` 函数分配内存,然后用 `resize` 来设置大小:
```cpp
vec.reserve(5); // 预先为向量分配能容纳5个元素的空间
vec.resize(5); // 将向量的实际大小设置为5,多余的元素会被填充默认值
vec = 15; // 添加新的元素
```
**相关问题--:**
1. `push_back` 方法的作用是什么?
2. 如何在 `std::vector` 中一次性添加多个元素?
3. `reserve` 和 `resize` 有什么区别?
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)