C++ vector初始化
时间: 2024-01-31 22:03:46 浏览: 96
C++中的vector可以通过多种方式进行初始化。以下是几种常见的初始化方法:
1. 默认初始化:使用默认构造函数创建一个空的vector,其大小和容量都为0。
```cpp
std::vector<int> vec; // 默认初始化,vec为空,大小和容量都为0
```
2. 使用另一个vector进行初始化:可以使用另一个vector的元素来初始化新的vector。
```cpp
std::vector<int> list2(list); // 使用list的元素初始化list2
std::vector<int> list2 = list; // 使用list的元素初始化list2(等价于上一行)
```
3. 使用范围初始化:可以使用一个范围内的元素来初始化vector,范围可以是数组、另一个vector或者其他容器。
```cpp
int arr[] = {1, 2, 3, 4, 5};
std::vector<int> vec(arr, arr + sizeof(arr) / sizeof(int)); // 使用数组arr的元素初始化vec
std::vector<int> vec2(vec.begin(), vec.begin() + 3); // 使用vec的前3个元素初始化vec2
```
4. 使用重复值初始化:可以使用一个重复的值来初始化vector,指定vector的大小和初始值。
```cpp
std::vector<int> vec3(5, 10); // 创建一个大小为5,初始值都为10的vector
```
5. 使用初始化列表初始化:可以使用初始化列表来初始化vector。
```cpp
std::vector<int> ilist4{1, 2, 3, 4, 5}; // 使用初始化列表{1, 2, 3, 4, 5}初始化ilist4
```
阅读全文