【发布时间】:2012-10-11 06:45:53
【问题描述】:
class A {
public:
std::function<void(int)> f_;
void print_num(int i) {
cout << i;
}
void setFuntion(std::function<void(int)> f) {
f_=f;
}
void run() {
setFunction(print_num);
}
};
这不起作用。我收到note: no known conversion for argument 1 from ‘<unresolved overloaded function type>’ to ‘std::function<void(int)>’ 和其他错误。
如果我将print_num 的定义放在课堂之外。一切正常。我尝试添加&A::、A:: 和this. 没有任何帮助。
【问题讨论】:
标签: c++ c++11 std-function