我想传递我的函数repaint()在3个版本中重载的函数指针。我想通过一个不带任何参数:传递一个重载成员函数的函数指针?
void repaint()
我想:
myObject = new Object(&myclass::repaint);
但是编译器说:“我不知道是哪个版本的选择”。好。
然后我试图
myObject = new Object(static_cast<void(*)(void)>(&repaint);
然后我得到了(对不起,坏的翻译):
- “无效操作上绑定的成员函数的表达式”
- “myObject的:: myObject没有重载函数接受3个参数“
如何正确传递它?
1.是否有可能发布'对象:对象的签名(...)' 2.似乎你的'static_cast'行中有一个输入错误,''''在';'之前缺少''''? –
[C++重载的方法指针]的可能重复(http://stackoverflow.com/questions/4364599/c-overloaded-method-pointer) – Oktalist