我试图使用的std :: ptr_fun来包装我的功能,但是当我尝试换用空参数和布尔返回类型我结束了一个错误的函数:C++ ptr_fun没有找到空参数化功能
代码:
std::function<bool()> cr = std::not1(std::ptr_fun(&funct1));
功能:
bool funct1()
{
return false;
}
错误:
error: no matching function for call to 'ptr_fun(bool (*)())'
但每当我将参数更改为int,问题似乎消失。
如何使用void参数包装函数???
不推荐使用'ptr_fun'。使用'std :: bind'。 – Pubby
我不能,我的学校编译器还不支持C++ 11,他们对更新它很固执。 –
'boost :: bind'呢?嘿。 – Pubby