我试图创建一个委托。我传递了一个应该稍后调用的函数指针。应该忽略已添加的指针。对于全局/静态和成员函数指针,它是微不足道的 - 我只是比较地址。但是lambda没有比较运算符。现在我有这样的事情(模板化函数):
make_delegate(void(*)(int)); // for global function
make_delegate(obj, void(MyClass::*)(int)); // for member function
我也希望将此界面保留为lambdas,即我可以写:
make_lambda_delegate([](int){});
但我不想要。我希望一切都有单make_delegate
。最好的方法是什么?