If I have the following piece of code
std::unordered_multimap<std::string, std::vector<double>> myMap;
std::vector<double> v1, v2, v3;
// init v1, v2, v3....
myMap.insert(std::make_pair<std::string, std::vector<double>("vec", v1));
myMap.insert(std::make_pair<std::string, std::vector<double>("vec", v2));
myMap.insert(std::make_pair<std::string, std::vector<double>("vec", v3));
If I access the values with an iterator they will always be in this order: v1, v2, v3
So basically if I insert elements of the same key, but different value, do they always retain the order of insertion?