c ++ custom compare função para std :: sort ()

Eu quero criar função de comparação personalizada para std :: sort (), para classificar alguns pares de valor-chave std :: pair

Aqui é a minha função

 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;
    }

Então, dentro de alguma classe eu tenho vetor de par de alunos:

vector<pair<K,V>> items;  

E algum método para classificar este vetor por chaves, usando std :: sort ()

std::sort(items.begin(), items.end(), comparePairs<K,V>);

Eu tenho erros de compilação dentro, que disse

"não é possível converter o número do parâmetro de 'std :: pair <_Ty1, _Ty2>' para 'const void *'"

. O que é um erro?

questionAnswers(3)

yourAnswerToTheQuestion