У меня есть перегруженная функция, которую я хочу передать, обернутую в функцию std::. GCC4.6 не находит «функцию сопоставления». Хотя я нашел здесь некоторые вопросы, ответы не так ясны, как хотелось бы. Может ли кто-нибудь сказать мне, почему следующий код не может вычислить правильную перегрузку и как (элегантно)обойти это?
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();
}