第2的resize具体怎么用,请提供详细示例
时间: 2024-04-17 17:26:42 浏览: 8
当使用 STL 容器中的 `resize` 函数时,需要注意以下几点:
1. `resize` 函数可以改变容器的大小,使其包含指定数量的元素。
2. 如果新的大小小于当前大小,那么超出新大小的元素会被删除。
3. 如果新的大小大于当前大小,那么会添加新的元素,其默认值由容器的值初始化规则决定。
以下是一个详细示例,展示了如何使用 `resize` 函数来动态改变 `std::vector` 的大小:
```cpp
#include <iostream>
#include <vector>
int main() {
std::vector<int> arr;
// 添加元素到数组
arr.push_back(1);
arr.push_back(2);
arr.push_back(3);
std::cout << "当前数组大小:" << arr.size() << std::endl;
// 改变数组大小为5,并填充默认值0
arr.resize(5);
std::cout << "改变大小后的数组大小:" << arr.size() << std::endl;
// 打印数组内容
std::cout << "数组内容:";
for (int i = 0; i < arr.size(); i++) {
std::cout << arr[i] << " ";
}
std::cout << std::endl;
return 0;
}
```
输出结果:
```
当前数组大小:3
改变大小后的数组大小:5
数组内容:1 2 3 0 0
```
在上面的示例中,我们首先创建一个空的 `std::vector` 容器,并向其中添加了三个元素。然后,我们使用 `resize` 函数将容器的大小改变为5,并填充默认值0。最后,我们打印了改变大小后的数组大小和数组内容。
请注意,在调用 `resize` 函数后,容器的大小会发生改变,并且新添加的元素会根据容器的值初始化规则来确定默认值。