清空unordered_map
时间: 2023-12-19 11:31:52 浏览: 77
清空 unordered_map 可以使用 unordered_map::clear() 函数,该函数会将 unordered_map 中的所有元素清空,使其变为空 unordered_map。具体用法如下所示:
```c++
unordered_map<int, string> myMap;
// 添加元素
myMap.insert({1, "apple"});
myMap.insert({2, "banana"});
myMap.insert({3, "orange"});
// 清空元素
myMap.clear();
```
需要注意的是,clear() 函数只会清空 unordered_map 中的元素,而不会释放 unordered_map 占用的内存空间。如果需要释放内存空间,可以使用 unordered_map::swap() 函数将空的 unordered_map 与原有的 unordered_map 交换,从而释放原有 unordered_map 占用的内存空间。
相关问题
c++清空unordered_map
清空unordered_map可以使用clear()函数。下面是一个示例代码:
```cpp
#include <iostream>
#include <unordered_map>
int main() {
std::unordered_map<int, std::string> umap;
umap.insert(std::make_pair(2023, "yes"));
umap.insert(std::make_pair(2024, "no"));
umap.insert(std::make_pair(2025, "before"));
umap.insert(std::make_pair(2026, "now"));
std::cout << "Before clear: " << std::endl;
for (auto& e : umap) {
std::cout << e.first << "=>" << e.second << " ";
}
std::cout << std::endl;
umap.clear();
std::cout << "After clear: " << std::endl;
for (auto& e : umap) {
std::cout << e.first << "=>" << e.second << " ";
}
std::cout << std::endl;
return 0;
}
```
输出结果:
```
Before clear:
2023=>yes 2024=>no 2025=>before 2026=>now
After clear:
```
怎么清空unordered_map
要清空一个 `unordered_map`,你可以使用 `clear()` 函数。这个函数会移除 `unordered_map` 中的所有元素,使其变为空。以下是一个示例:
```cpp
#include <iostream>
#include <unordered_map>
int main() {
std::unordered_map<int, std::string> myMap;
myMap[1] = "Apple";
myMap[2] = "Banana";
myMap[3] = "Orange";
std::cout << "Size before clearing: " << myMap.size() << std::endl;
myMap.clear();
std::cout << "Size after clearing: " << myMap.size() << std::endl;
return 0;
}
```
输出结果为:
```
Size before clearing: 3
Size after clearing: 0
```
在这个示例中,我们使用 `clear()` 函数清空了 `myMap`,并在清空前后分别打印了其大小。可以看到,在清空后,`unordered_map` 变为空,并且大小为 0。
阅读全文