c ++ función de comparación personalizada para std :: sort ()
Quiero crear una función de comparación personalizada para std :: sort (), para ordenar algunos pares clave-valor std :: pair
Aquí está mi función
template <typename K, typename V>
int comparePairs(const void* left, const void* right){
if((((pair<K,V>*)left)->first) <= (((pair<K,V>*)right)->first))
return 1;
else
return -1;
}
Luego, dentro de alguna clase tengo vector de pares miembro de clase:
vector<pair<K,V>> items;
Y algún método para ordenar este vector por claves, usando std :: sort ()
std::sort(items.begin(), items.end(), comparePairs<K,V>);
Tengo errores de compilación dentro, que decía
"no se puede convertir el número de parámetro de 'std :: pair <_Ty1, _Ty2>' a 'const void *'"
. ¿Qué es un error?