绕过嵌套仿函数(C)
作者:互联网
有没有办法在主要的外面传递foo_?我在另一个关于仿函数的问题中看到了关于Boost的一些信息看起来它可能会起作用.这是answer在这个问题中提到的Boost.如果可以,我想避免Boost.
#include <iostream>
int main()
{
class foo {
public:
void operator()() {
std::cout << "Hello" << std::endl;
}
};
foo foo_;
foo_();
return 0;
}
解决方法:
不,目前本地类型不允许进入模板(否则你可以使用boost或std :: tr1 :: function).但是,你可以做OOP,Foo继承了一些东西(你的foo实现了一个虚拟的opeator()函数)而你将ptr传递给了Foo.
标签:c,functor 来源: https://codeday.me/bug/20190827/1742470.html