Ho una funzione di sovraccarico che voglio passare insieme avvolta in una funzione std ::. GCC4.6 non trova una "funzione di corrispondenza". Mentre ho trovato alcune domande qui le risposte non sono chiare come vorrei. Qualcuno potrebbe dirmi perché il seguente codice non può dedurre il sovraccarico corretto e come (elegantemente) lavorare intorno ad esso?Funzione di sovraccarico del capo tramite std :: function
int test(const std::string&) {
return 0;
}
int test(const std::string*) {
return 0;
}
int main() {
std::function<int(const std::string&)> func = test;
return func();
}
Si prega di utilizzare 'static_cast' al posto del cast vecchio stile. – Anonymous
@Anonimo: Sì. Ma volevo farla breve. Comunque, l'ho modificato per far sembrare il C++ - ish! – Nawaz
Che ironia: devi usare i puntatori di funzione per ottenere una funzione std ::, che è stata introdotta per allontanarti dai puntatori di funzione :) thx – abergmeier