Copiar std :: mapa en std :: vector de pares
Estoy tratando de copiar un mapa en un vector de pares, para poder ordenar el vector porsecond
miembro de datos de los pares. He resuelto esto haciendo esto:
void mappedWordsListSorter(){
for (auto itr = mappedWordsList.begin(); itr != mappedWordsList.end(); ++itr){
vectorWordsList.push_back(*itr);
}
sort(vectorWordsList.begin(), vectorWordsList.end(), [=](pair<string, int>& a, pair<string, int>& b){return a.second > b.second;});
}
Necesito encontrar una manera de hacer esto sin usar un bucle sin procesar, usando la biblioteca estándar en su lugar. Me he encontrado con muchos ejemplos haciendo esto solo transfiriendo las claves o los valores del mapa. Necesito copiar en un vector depairs<string, int>
. ¿Cuál es la mejor manera de hacerlo