[英]C++ ptr_fun not finding void parameterized functions
我尝试使用std :: ptr_fun来包装我的函数,但是当我尝试用void参数和bool返回类型包装函数时,我最终得到一个错误:
码:
std::function<bool()> cr = std::not1(std::ptr_fun(&funct1));
功能:
bool funct1()
{
return false;
}
错误:
错误:没有匹配函数来调用'ptr_fun(bool(*)())'
但每当我将参数更改为int时,问题似乎就消失了。
如何用void参数包装函数?
std::ptr_fun
仅适用于一元函数:只有一个参数的函数。
bool funct1();
不是一元函数,它是一个虚函数。 没有void参数这样的东西。 语法bool funct1(void);
继承自C只是一种奇怪的方式,说根本没有参数。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.