C 语言

关注公众号 jb51net

关闭
首页 > 软件编程 > C 语言 > 利用sink

c++回调之利用sink示例

作者:

Sink的本质是利用C++的封装、继承、多态的面向对象来实现,从实现角度来说,更优于函数指针回调,下面是示例

复制代码 代码如下:

// cbBysink.cpp : Defines the entry point for the console application.
//

#include "stdafx.h"
#include "cbBysink.h"

/************************************************************************/
/*                上层回调函数                                            */
/************************************************************************/

class CMyWork : public baseCallBack
{
public:
    CMyWork()
    {
        // 注册回调
        CWork::registercallback(this);
    }
    // 回调注册实现
    void CallbackFunction(int a, int b)
    {
        cout << "a = " << a << ",b = " << b << "\n" << endl;
        return;
    }
    // 触发回调
    void makefunction(int a, int b)
    {
        CWork::makecallback(a, b);
        return;
    }
protected:
private:
};

int main(int argc, char* argv[])
{
    CMyWork c_mywork;

    // 触发的时候不需要进行动态注册
    c_mywork.makefunction(5, 6);

    return 0;
}

您可能感兴趣的文章:
阅读全文