#include "iostream"\n#include "map"\n#include "string"\n\nstruct MyStruct {\n int value1;\n float value2;\n};\n\nint main() {\n std::map<std::string, MyStruct> myMap; // 创建一个map\n\n // 创建一个结构体对象并插入到map中\n MyStruct struct1 = { 10, 3.14 };\n myMap.insert(std::make_pair("key1", struct1));\n\n // 创建另一个结构体对象并使用insert函数插入到map中\n MyStruct struct2 = { 20, 6.28 };\n myMap.insert(std::pair<std::string, MyStruct>("key2", struct2));\n\n // 使用下标运算符插入数据\n MyStruct struct3 = { 30, 9.42 };\n myMap["key3"] = struct3;\n\n // 遍历map并输出所有键值对\n for (const auto& pair : myMap) {\n std::cout << pair.first << ": " << pair.second.value1 << ", " << pair.second.value2 << std::endl;\n }\n\n return 0;\n}\n\n在此示例中,我们首先定义了一个MyStruct结构体,它包含两个成员变量value1value2。然后创建了一个map对象myMap,其中键的类型为std::string,值的类型为MyStruct。\n\n我们使用insert函数向map中插入数据,可以使用std::make_pair函数或std::pair构造函数来创建键值对,并将其传递给insert函数。另外,我们还可以使用下标运算符[]来插入数据,将键和值作为参数传递给[]运算符即可。\n\n最后,我们遍历map中的所有键值对,并输出它们的键和值。

C++ 使用 map 存储结构体:用 insert 函数插入数据 - 示例详解

原文地址: https://www.cveoy.top/t/topic/p8ga 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录