我已获得以下代码:
#include <functional>
using namespace std;
void foo(function<void(int)>);
void foo(function<void(float, int)>);
void bar(int);
void bar2(float, int);
void dummy()
{
foo(bar);
foo(bar2);
}
根据我在http://gcc.godbolt.org/上尝试的不同编译器,有一个歧义错误或不... 谁对吗? 解决这个问题最优雅的方法是什么?