std::map 清空
时间: 2023-10-15 08:29:20 浏览: 97
要清空一个 std::map,你可以使用该容器的 clear() 函数。这个函数会移除所有的键值对,使 map 变为空。
下面是一个示例代码:
```cpp
#include <iostream>
#include <map>
int main() {
std::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
```
这样,你就成功清空了 std::map。
相关问题
std::map清空
要清空std::map,可以使用clear()函数。clear()函数会移除map中的所有元素,使其变为空map。
示例代码如下:
```cpp
std::map<int, std::string> myMap;
// 添加一些元素到map中
// 清空map
myMap.clear();
```
调用clear()函数后,myMap将不再包含任何元素。
std::map 循环清空
std::map是C++标准库中的一个关联容器,它提供了一种键值对的映射关系。如果你想要循环清空一个std::map,可以使用迭代器来遍历并删除其中的元素。以下是一个示例代码:
```cpp
#include <iostream>
#include <map>
int main() {
std::map<int, std::string> myMap;
myMap = "apple";
myMap = "banana";
myMap = "orange";
// 使用迭代器遍历并删除元素
for (auto it = myMap.begin(); it != myMap.end(); ) {
it = myMap.erase(it);
}
// 输出map是否为空
if (myMap.empty()) {
std::cout << "Map is empty." << std::endl;
} else {
std::cout << "Map is not empty." << std::endl;
}
return 0;
}
```
在上述代码中,我们首先创建了一个std::map对象myMap,并向其中插入了三个键值对。然后,我们使用迭代器进行循环遍历,并调用erase函数删除每个元素。需要注意的是,在调用erase函数后,迭代器会自动指向下一个元素,因此不需要手动递增迭代器。最后,我们通过empty函数检查map是否为空。
阅读全文