[英]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.