我怎么知道对象是lambda?

时间:2015-02-19 16:00:16

标签: c++ lambda delegates

我试图创建一个委托。我传递了一个应该稍后调用的函数指针。应该忽略已添加的指针。对于全局/静态和成员函数指针,它是微不足道的 - 我只是比较地址。但是lambda没有比较运算符。现在我有这样的事情(模板化函数):

make_delegate(void(*)(int)); // for global function
make_delegate(obj, void(MyClass::*)(int)); // for member function

我也希望将此界面保留为lambdas,即我可以写:

make_lambda_delegate([](int){});

但我不想要。我希望一切都有单make_delegate。最好的方法是什么?

0 个答案:

没有答案