C++回调函数


#include "Function.h"
#include <iostream>
using namespace std;

int Add(int a, int b);
int MyCallBack(int (*pAdd)(int a, int b),int m, int n);

 

void main()
{

 

 int res = MyCallBack(Add,100,300);
 cout << res <<endl;
 int tem;
 cin >> tem;
 //system("pause");
}

 


#include "Function.h"
#include <iostream>
using namespace std;

int Add(int a, int b);
typedef int (*pAdd)(int a, int b);
int MyCallBack(pAdd add,int m, int n);
void ChangeValue(int *pDatas);
void main()
{
 /*int datas[1] ={100};
 ChangeValue(datas);//值已经改变,输出1000
 cout << datas[0] << endl;*/
 cout << MyCallBack(Add,10000,10000);//输出20000
 int tem;
 cin >> tem;
 //system("pause");
}


int Add(int a, int b)
{

 return (a + b);
}
int MyCallBack(pAdd add,int m, int n)
{
 int result = add(m,n);
 return result;

}


void ChangeValue(int *pDatas)
{
 pDatas[0] = 1000;
}

 

 


int Add(int a, int b)
{

 return (a + b);
}
int MyCallBack(int (*pAdd)(int a, int b),int m, int n)
{
 int result = pAdd(m,n);
 return result;

}

posted @ 2013-06-13 19:37  Predator  阅读(117)  评论(0编辑  收藏  举报