3 つの値のグループを持つマルチマップをどのように実装するのか疑問に思っていました。例: [{a,b,c}, {d,e,f}]
std::pair を使用する必要がありますか?
はい。std::pair の使用は、値 {b,c} および {e,f} を表す合理的な方法です。キー a、値 {b,c} およびキー D、値 {e, f}。
その後、キー a、値 {z,y} を持つ場合があります。それが挿入されると、キー a を見つけることができ、キー a に関連付けられたすべての値をフェッチできるイテレータが返されます。
タプルがある場合は、タプル {a,b,c} でキー a を使用することを検討してください。
3 つの値のグループを表すキーを意味する場合、たとえば std::array をキーとして使用できます。
例えば
std::multimap<std::array<int, 3>, std::string> m;