С++ как вставлять в multimap?

Я хочу настроить multimap в С++:

multimap<pair<string, string>, vector<double> > mmList;

Но как вставлять данные:

mmList.insert(pair<string, string>, vector<double>("a", "b", test));

Ответ 1

Вы можете создавать пары с помощью std::make_pair(a, b). Как правило, вы можете вставлять пары в карты/мультиплексы. В вашем случае вам нужно построить пару, состоящую из пары строк и вектора:

    std::multimap<std::pair<std::string, std::string>, std::vector<double> > mmList;

    std::vector<double> vec;
    mmList.insert(std::make_pair(std::make_pair("a","b"), vec));

Ответ 2

Вот пример:

std::multimap<std::string,std::string> Uri_SessionId_Map;
std::string uri = "http";
std::string sessId = "1001";
std::pair<std::string,std::string> myPair(uri,sessId);
Uri_SessionId_Map.insert(myPair);

Просто сломал несколько строк для большей удобочитаемости. Вы можете понять, как сделать пару. пара должна иметь такую ​​же шаблонную форму, как и для мультимапа.