c++ 定义vector的容器如何清零
时间: 2023-08-17 18:09:10 浏览: 76
在 C++ 中,你可以使用 `clear()` 方法来清空一个 `vector` 容器。`clear()` 方法会移除容器内的所有元素,使其成为空容器。
以下是使用 `clear()` 方法清空 `vector` 容器的示例代码:
```cpp
#include <iostream>
#include <vector>
int main() {
std::vector<int> myVector = {1, 2, 3, 4, 5};
myVector.clear();
std::cout << "Size of vector after clearing: " << myVector.size() << std::endl; // 输出: 0
return 0;
}
```
在上面的示例中,我们首先创建了一个包含整数的 `vector` 容器,然后调用 `clear()` 方法清空该容器。最后,通过输出容器的大小来验证容器是否已被清空(大小为0)。
请注意,`clear()` 方法仅清空容器内的元素,但不会释放容器所占用的内存空间。如果你希望在清空容器后释放内存空间,可以使用 `vector` 的 `swap()` 方法与一个空的 `vector` 交换内容,达到释放内存的效果。
相关问题
c++中vector容器
以下是关于C++中vector容器的介绍:
1. 定义和初始化vector容器
```cpp
#include <vector>
#include <iostream>
int main() {
// 定义一个整型vector
std::vector<int> vec1;
// 初始化vector并赋值
std::vector<int> vec2 = {1, 2, 3, 4, 5};
// 使用迭代器遍历vector
for (auto it = vec2.begin(); it != vec2.end(); ++it) {
std::cout << *it << " ";
}
return 0;
}
```
2. 向vector容器中添加和删除元素
```cpp
#include <vector>
#include <iostream>
int main() {
std::vector<int> vec = {1, 2, 3, 4, 5};
// 在末尾添加元素
vec.push_back(6);
// 删除末尾元素
vec.pop_back();
// 删除指定位置的元素
vec.erase(vec.begin() + 2);
// 清空vector
vec.clear();
return 0;
}
```
3. 传参时使用引用
```cpp
#include <vector>
#include <iostream>
void test(std::vector<int>& nums) {
// 对传入的vector进行操作
for (int num : nums) {
std::cout << num << " ";
}
}
int main() {
std::vector<int> vec = {1, 2, 3, 4, 5};
test(vec);
return 0;
}
```
c++定义字符串的vector容器
在 C++ 中,可以使用 `std::vector` 容器来存储字符串。要定义一个存储字符串的 `vector`,可以使用以下代码:
```c++
#include <vector>
#include <string>
std::vector<std::string> str_vec;
```
这将定义一个名为 `str_vec` 的 `vector`,其中每个元素都是一个 `std::string` 类型的字符串。现在可以向 `str_vec` 中添加字符串,例如:
```c++
str_vec.push_back("Hello");
str_vec.push_back("world");
```
这将向 `str_vec` 中添加两个字符串 "Hello" 和 "world"。要访问 `vector` 中的字符串,可以使用下标运算符 `[]`,例如:
```c++
std::string first_str = str_vec[0]; // first_str = "Hello"
std::string second_str = str_vec[1]; // second_str = "world"
```
当然,还有许多其他的操作可以对 `vector` 进行,例如删除、插入等等。详情请参考 C++ 的 `std::vector` 文档。