cpp-callback function

使用 c++ 11 实现类成员函数回调

std::function<int(const char*, const int&, const void*)> m_cbFunc;
virtual void registerCallback(std::function<int(const char*, const int&, const void*)> Callback) = 0;

void ProtocolCommBase::registerCallback(std::function<int(const char*, const int&, const void*)> cbFunc)
{
m_cbFunc = std::move(cbFunc);
}

// 在另一个类里面绑定成员函数,使用 lambda 表达式
m_spProcol->registerCallback([&](const char* pval, const int& pvalLength, const void* pContext)->int { return callbackFunc(pval, pvalLength, pContext); });

int callbackFunc(const char* pval, const int& Number, const void* pContext);
int CDevEnvNoiseJNRS::callbackFunc(const char* pval, const int& Number, const void* pContext)
{
return 0;
}