vector怎么清空
时间: 2023-09-26 08:10:15 浏览: 317
要清空一个vector,可以使用以下几种方法:
1. 使用clear()函数:调用vector的clear()函数可以清空所有元素,但不会回收内存。例如,vec.clear()可以清空vector vec中的所有元素。
2. 使用erase()函数循环删除:可以使用erase()函数循环删除vector中的元素。通过迭代器遍历vector,然后使用erase()函数删除元素。需要注意的是,在使用erase()函数时,要注意迭代器的更新。例如,可以使用以下代码循环删除vector vec中的所有元素:
```cpp
vector<int>::iterator it;
for (it = vec.begin(); it != vec.end(); ) {
it = vec.erase(it);
}
```
3. 使用swap()函数:可以使用swap()函数来清空vector并回收内存。有两种写法可以实现这个目的。一种是使用临时vector与原vector交换,例如:
```cpp
vector<int>().swap(vec);
```
另一种是直接使用swap()函数,例如:
```cpp
vec.swap(vector<int>());
```
以上是清空vector的几种常见方法。根据具体情况选择合适的方法来清空vector。
#### 引用[.reference_title]
- *1* [【C/C++笔记】之vector清除元素和空间的三种方法](https://blog.csdn.net/qq_35097289/article/details/104902763)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down1,239^v3^insert_chatgpt"}} ] [.reference_item]
- *2* [C++ Vector 清空元素的方法](https://blog.csdn.net/qq_51101876/article/details/119494858)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down1,239^v3^insert_chatgpt"}} ] [.reference_item]
[ .reference_list ]
阅读全文