怎么清空std::vector
时间: 2024-08-16 07:05:29 浏览: 38
在C++中,如果你想清空`std::vector`容器的内容,你可以使用其提供的成员函数`clear()`。这个函数会删除所有已存储的对象,但不会改变容器本身的大小。
下面是一个示例:
```cpp
#include <vector>
// 创建一个vector
std::vector<int> numbers {1, 2, 3, 4, 5};
// 清空vector
numbers.clear();
// 现在numbers是空的
cout << "Size of vector after clearing: " << numbers.size() << std::endl; // 输出0
```
在这段代码里,调用`numbers.clear()`之后,`numbers`将不再包含任何元素,它的大小变为0。
相关问题
清空std::vector
清空std::vector有多种方法,以下是其中的几种:
1.使用clear()函数:vec.clear()可以清空vector中的所有元素,但是不会释放vector的内存空间。
2.使用swap()函数:先vec.clear()再vec->swap( (std::vector <temp>)(vec) ),就能实现清空vector和释放原来vector的内存。
3.使用erase()函数:可以使用vector::erase()函数删除vector中的元素,可以使用迭代器循环删除,也可以使用erase()函数删除指定范围内的元素。
4.使用resize()函数:可以使用vector::resize()函数将vector的大小设置为0,这样可以清空vector中的所有元素,但是不会释放vector的内存空间。
如何清空std::vector<std::map<std::string,std::array<char,100>>> my_vector;
要清空一个std::vector<std::map<std::string,std::array<char,100>>>类型的变量my_vector,可以使用以下方法:
1. 使用clear()函数:可以通过调用my_vector.clear()函数来清空vector。这将删除vector中的所有元素,使其变为空。
2. 使用赋值操作符:可以将一个空的vector赋值给my_vector,例如my_vector = std::vector<std::map<std::string,std::array<char,100>>>();
3. 使用swap()函数:可以创建一个临时的空vector,并与my_vector交换,从而清空my_vector。代码示例:std::vector<std::map<std::string,std::array<char,100>>>().swap(my_vector);
阅读全文