1. 程式人生 > 其它 >泡泡的學習小筆記之回撥函式

泡泡的學習小筆記之回撥函式

技術標籤:筆記c++

回撥函式初接觸

Q1:什麼是回撥函式?
A:回撥函式就是一個被作為引數傳遞的函式。
Q2:如何使用回撥函式?
A:
第一步:建立一個回撥函式。(普通的函式建立)
第二步:在提供函式實現的一方進行初始化時,傳入回撥函式的指標給呼叫的一方。(將建立的回撥函式的指標給呼叫者)
當執行這個函式時,呼叫者就會使用函式指標呼叫回撥函式對時間進行處理

程式碼實現

//函式宣告
int calulate(int (*cal)(int,int),int,int);
int add(int,int);
int sub(int,int);
//主函式
int main()
{
	//定義a,b 2個變數,c用來接收函式返回值
int a,b,c; a=99; b=88; //回撥函式實現部分 c=calulate(add,a,b); cout << "first: "<< c << endl; c=calulate(sub,a,b); cout << "second:" << c << endl; return 0; } //定義實現帶參回撥函式的"呼叫函式" //三個引數,第一個是呼叫的函式,第二和第三個為傳入的引數 int
calulate(int (*cal)(int,int),int a,int b) { return cal(a,b); } //定義帶參回撥函式---加法 int add(int a,int b) { return a+b; } //定義帶參回撥函式---減法 int sub(int a,int b) { return a-b; }

上述程式執行結果如下:
程式結果圖