c++

C++函数模板能处理多种数据类型吗

小樊
84
2024-11-09 01:27:26
栏目: 编程语言

是的,C++函数模板可以处理多种数据类型

例如,以下是一个简单的C++函数模板,它接受两个参数并返回它们的和:

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

在这个例子中,T是一个占位符类型,它可以在实例化函数模板时被替换为任何数据类型。当你调用这个函数模板时,编译器会根据你提供的实际参数类型来生成相应的函数。

例如:

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

    std::cout << "a + b = " << add(a, b) << std::endl; // 调用 int 版本的 add 函数
    std::cout << "c + d = " << add(c, d) << std::endl; // 调用 double 版本的 add 函数

    return 0;
}

在这个例子中,add函数模板被实例化成了两个版本:一个用于处理int类型,另一个用于处理double类型。

0
看了该问题的人还看了