在要调用回调函数的类中声明:
CallFun.h
//返回类型为void, 参数类型为std::string
typedef void(*PCALLBACKFunc) (std::string );

class CallFun{
  private:
    PCALLBACKFunc m_pCallBack;
  public:  
    void setCallBack(PCALLBACKFunc Func);
    void runCallBack(std::string strMsg);
}

CallFun.cpp
void CallFun::setCallBack(PCALLBACKFunc Func)
{
	m_pCallBack = Func;
}
void CallFun::runCallBack(std::string strMsg)
{
  (*m_pCallBack)(strMsg);
}


在执行逻辑操作的同时要显示进度,可以用回调函数使得逻辑和显示分开。在测试该逻辑函数时,设置回调函数什么都不做,利于简化测试。
评论
发表评论

您还没有登录,请登录后发表评论