如何输出这种结果:apple => 5banana => 3pear => 2After erase:apple => 5pear => 2
时间: 2023-08-09 20:09:39 浏览: 55
要输出这种结果,您可以修改程序中输出的格式。具体地,您可以在输出键值对之间添加一个空格,以保持与您提供的输出格式的一致性。您可以使用以下代码作为参考:
```
#include <iostream>
#include <map>
int main(){
std::map<std::string, int> myMap = {
{"apple", 5},
{"banana", 3},
{"pear", 2}
};
// 使用 range-based for 循环遍历 map
for(auto& [key, value] : myMap)
{
std::cout << key << " => " << value << " ";
}
// 删除值为 3 的元素
myMap.erase("banana");
// 输出删除后的 map
std::cout << "\nAfter erase:" << std::endl;
for(auto& [key, value] : myMap)
{
std::cout << key << " => " << value << " ";
}
return 0;
}
```
在这个代码中,我们修改了循环中输出的格式,将键值对之间的空格从换行符`\n`改变成了空格符` `。在删除元素后,我们在输出删除后的map之前添加了一个换行符`\n`,以保持输出的格式一致。
希望这个回答对您有所帮助,如果您有任何问题,请随时提出。