我正在尝试为这种std::function
类型添加别名,因为我计划将来使用其他东西.我希望能够轻松地做出改变.但是我从编译器收到一条我不太懂的错误信息.我理解这意味着什么,但我不明白这一点.
例:
#includetemplate < typename Ret, typename... Args > using MyFunc = std::function< Ret(Args...) >; int main(int argc, char **argv) { MyFunc fn; return 0; }
产生:
..\main.cpp|7|required from here| ..\main.cpp|3|error: function returning a function|
yuri kiloche.. 7
templateusing MyFunc = std::function ;
void(int)
是单一(功能)类型.
templateusing MyFunc = std::function ;
void(int)
是单一(功能)类型.