溫馨提示×

c++函數(shù)指針怎么作為參數(shù)傳遞

c++
小億
110
2024-01-25 10:03:19
欄目: 編程語言

在 C++ 中,可以使用函數(shù)指針作為參數(shù)傳遞給其他函數(shù)。以下是一個示例:

#include <iostream>

// 定義一個函數(shù)指針類型
typedef void (*FunctionPtr)(int);

// 接受函數(shù)指針作為參數(shù)的函數(shù)
void printNumber(FunctionPtr ptr, int num) {
    ptr(num);
}

// 被傳遞的函數(shù)
void printSquare(int num) {
    std::cout << "Square: " << num * num << std::endl;
}

int main() {
    // 將函數(shù)指針作為參數(shù)傳遞給另一個函數(shù)
    printNumber(printSquare, 5);

    return 0;
}

在上面的示例中,我們首先定義了一個函數(shù)指針類型 FunctionPtr,該函數(shù)指針接受一個 int 參數(shù)并返回 void。然后,我們定義了一個接受函數(shù)指針作為參數(shù)的函數(shù) printNumber,該函數(shù)接受一個函數(shù)指針和一個 int 參數(shù),并調(diào)用傳遞的函數(shù)指針。最后,在 main 函數(shù)中,我們將 printSquare 函數(shù)的指針作為參數(shù)傳遞給 printNumber 函數(shù)。

當(dāng)運(yùn)行程序時,它將輸出:

Square: 25

這證明了函數(shù)指針成功作為參數(shù)傳遞給了其他函數(shù)。

0