#include <stdio.h>
typedef int(*pMyFun)(int a, int b);
static int myAdd(int a, int b)
{
return a + b;
}
static int mySub(int a, int b)
{
return a - b;
}
class myTest
{
public:
myTest();
void setCallBack(pMyFun cb);
void start();
private:
pMyFun callback;
};
myTest::myTest()
{
callback = NULL;
}
myTest::~myTest()
{
}
void myTest::setCallBack(pMyFun cb)
{
callback = cb;
}
void myTest::start()
{
int a = 3, b = 7;
if(NULL != callback)
printf("ret of callback = %d\n", callback(a, b));
}
int main(int argc, char* argv[])
{
myTest test;
test.setCallBack(myAdd);
test.start();
test.setCallBack(mySub);
test.start();
}
typedef int(*pMyFun)(int a, int b);
static int myAdd(int a, int b)
{
return a + b;
}
static int mySub(int a, int b)
{
return a - b;
}
class myTest
{
public:
myTest();
~myTest();
public:void setCallBack(pMyFun cb);
void start();
private:
pMyFun callback;
};
myTest::myTest()
{
callback = NULL;
}
myTest::~myTest()
{
}
void myTest::setCallBack(pMyFun cb)
{
callback = cb;
}
void myTest::start()
{
int a = 3, b = 7;
if(NULL != callback)
printf("ret of callback = %d\n", callback(a, b));
}
int main(int argc, char* argv[])
{
myTest test;
test.setCallBack(myAdd);
test.start();
test.setCallBack(mySub);
test.start();
}