Каков наиболее эффективный способ получения списков (как vector
) ключей и значений из unordered_map
?
Для конкретности предположим, что рассматриваемая карта a unordered_map<string, double>
.
Я хотел бы получить ключи как vector<string>
, а значения - как vector<double>
.
unordered_map<string, double> um;
vector<string> vs = um.enum_keys();
vector<double> vd = um.enum_values();
Я могу просто перебрать карту и собрать результат, но есть ли еще эффективный метод? Было бы неплохо иметь метод, который также работает для обычной карты, так как я могу переключиться на это.