如何在 multimap 中存储 2 个以上的值?

How to store more than 2 values in multimap?

我遇到了一个问题,我们如何通过 multimap 存储 3 个值。例如 1 个 int 和 2 个 C++ 字符串。我们如何存储这 3 个值。我尝试制作一个结构并存储 2 个字符串,然后将其作为

传递到多图代码中

struct names{ std::string name; std::string secondname; }; 并完成

multimap<int, names>Multimap;

首先从用户那里取号码,第二从用户那里取名字,第三从用户那里取名字然后

Multimap.insert(make_pair(number,{name,secondname}));

另一种方法是使用元组。

multimap<int, std::tuple<std::string, std::string>> Multimap; 
Multimap.insert(make_pair(number, std::make_tuple(name, secondname));

https://en.cppreference.com/w/cpp/utility/tuple

请像这样定义对的类型:

struct names{ std::string name; std::string secondname; }; 
multimap<int, names>Multimap;

Multimap.insert(make_pair<int, names>(number,{"name","secondname"}) );
// or simply you can use pair() too instead of make_pair()