事件和参数列表错误

时间:2011-05-27 10:42:17

标签: c++

我的CEGUI库有问题

我有一个活动课(点击,关键...等)

class GUI_Event
{
private:
bool (*_L_Mouse_Click_DoFunction ) () ; 

protected:
bool onClick(const EventArgs &Args)
 { 
   return _L_Mouse_Click_DoFunction();
 }


public:
SetFunctionClick(bool Function ())  /// i forget ()
 { 
  _L_Mouse_Click_DoFunction = Function ;
  }

};

我有另一个名为按钮的类来创建按钮和窗口

cass GUI_Button : public GUI_Event
{
public:
void CreateButton(//some argument) ; 
};

void GUI_Button::CreateButton(//some argument)
{
...
.
..
..

_Frame_Window->subscribeEvent ( FrameWindow::EventMouseClick , Event::Subscriber (&GUI_Window::onClick ));//error



}

现在,如果我编译此代码,我会收到以下错误

  

错误C2064:术语未评估为   功能1   参数c:\ cegui-sdk-0.7.5-vc10 \ cegui \ include \ ceguifunctorcopyslot.h 51

1 个答案:

答案 0 :(得分:2)

检查此行,

SetFunctionClick(bool Function) { _L_Mouse_Click_DoFunction = Function ;}

类成员_L_Mouse_Click_DoFunction是一个函数指针。因此,它只能分配相同的类型变量。值Function属于bool类型。

您可以将其更改为,

SetFunctionClick(bool (*Function) ())