C++ yi'wei容器初始化
时间: 2024-09-14 13:07:27 浏览: 39
在C++中,容器初始化通常指的是使用不同的方法将元素添加到容器对象中,以准备使用。容器包括标准模板库(STL)中的一系列类,如`vector`、`list`、`map`等。初始化容器的方式有很多,下面列举几种常见的:
1. 直接使用初始化列表(Initializer List):
```cpp
std::vector<int> vec = {1, 2, 3, 4, 5}; // 使用初始化列表初始化vector
```
2. 利用构造函数:
```cpp
std::vector<int> vec(5); // 创建一个包含5个元素,默认初始化为0的vector
std::map<std::string, int> m{{"one", 1}, {"two", 2}}; // 使用pair初始化map
```
3. 使用`push_back`或`push_front`等方法逐个添加元素:
```cpp
std::vector<int> vec;
vec.push_back(10); // 向vector末尾添加一个元素10
```
4. 使用范围for循环或迭代器范围进行初始化:
```cpp
int arr[] = {1, 2, 3, 4, 5};
std::vector<int> vec(std::begin(arr), std::end(arr)); // 使用数组初始化vector
```
5. 使用`assign`方法进行赋值:
```cpp
std::vector<int> vec;
vec.assign({1, 2, 3, 4, 5}); // 使用花括号初始化列表为vector赋值
```
6. 使用`copy`算法从其他容器或数组复制元素:
```cpp
std::vector<int> src = {1, 2, 3};
std::vector<int> dest;
dest.assign(src.begin(), src.end()); // 从src向dest复制元素
```
7. 使用`resize`方法改变容器大小:
```cpp
std::vector<int> vec = {1, 2, 3};
vec.resize(5); // 将vector大小调整为5,新增的元素默认初始化为0
```
使用这些方法可以灵活地初始化C++中的各种容器,并根据需要为容器添加元素。正确的初始化方法不仅能够确保容器中元素的正确放置,还可以提高代码的可读性和效率。
阅读全文