【发布时间】:2015-06-15 15:26:39
【问题描述】:
为神秘的解密道歉。
我希望创建以下类型的函子:
const boost::function<bool ()>& functor
请考虑课程:
#include <boost/function.hpp>
class X {
public:
bool foo();
void bar() ;
};
void X::bar() {
const boost::function<bool (X *)>& f = &X::foo;
}
bool X::foo() {
std::cout << __func__ << " " << __LINE__ << " " << std::endl;
return true;
}
我有:
const boost::function<bool (X *)>& f = &X::foo;
我可以有类似的东西
const boost::function<bool ()>& f = &X::foo;
使用 boost::bind 或其他方式?
谢谢
【问题讨论】:
-
你为什么要对 boost 函数使用 const 引用?引用生命周期扩展通常会起作用,但是为临时对象而不是实际对象创建别名似乎毫无意义?
-
@Yakk 同意了。我的错。