C++学习之回调函数

时间:2023-03-10 01:56:20
C++学习之回调函数

回调函数: 通过函数指针进行调用的函数。 回调函数不是由实现方进行调用,而是将函数指针传入,在特殊条件或者状态下进行触发调用。

譬如: 在自定义按钮控件时,当点击按钮,触发点击事件,调用指定函数。

注: 回调函数继承于C语言。在C++中,只与C代码建立接口或与已有的回调接口打交道时,才使用回调函数,

除此之外,在C++中应使用虚拟方法或仿函数,而不是回调函数。

回调函数

 //m_callback即为回调函数,setCallback用于传入指定函数;
class CMenuButton : public CSDLGameObj
{
public:
CMenuButton(): m_callback(NULL),m_bRelease(TRUE){};
void load(CLoaderParam *pParam);
void Draw();
void Update();
void Clean();
void setCallback(void (*callback)()) { m_callback = callback; }
private:
void (*m_callback)();
BOOL m_bRelease;
};