溫馨提示×

C++函數(shù)模板能處理多種數(shù)據(jù)類型嗎

c++
小樊
81
2024-11-09 01:27:26
欄目: 編程語言

是的,C++函數(shù)模板可以處理多種數(shù)據(jù)類型

例如,以下是一個(gè)簡單的C++函數(shù)模板,它接受兩個(gè)參數(shù)并返回它們的和:

template <typename T>
T add(T a, T b) {
    return a + b;
}

在這個(gè)例子中,T是一個(gè)占位符類型,它可以在實(shí)例化函數(shù)模板時(shí)被替換為任何數(shù)據(jù)類型。當(dāng)你調(diào)用這個(gè)函數(shù)模板時(shí),編譯器會根據(jù)你提供的實(shí)際參數(shù)類型來生成相應(yīng)的函數(shù)。

例如:

int main() {
    int a = 3, b = 4;
    double c = 1.5, d = 2.5;

    std::cout << "a + b = " << add(a, b) << std::endl; // 調(diào)用 int 版本的 add 函數(shù)
    std::cout << "c + d = " << add(c, d) << std::endl; // 調(diào)用 double 版本的 add 函數(shù)

    return 0;
}

在這個(gè)例子中,add函數(shù)模板被實(shí)例化成了兩個(gè)版本:一個(gè)用于處理int類型,另一個(gè)用于處理double類型。

0