📜  模板和默认参数(1)

📅  最后修改于: 2023-12-03 14:55:53.115000             🧑  作者: Mango

模板和默认参数

在编程中,有时我们需要使用相同的代码来处理不同的变量,以到达同样的结果。而这就是模板的用武之地。另一方面,为了增强代码的灵活性,可以使用默认参数。

模板

模板是C ++编程中的重要概念,可使开发者编写一次代码,并将其用于不同类型和数据的处理。如下所示是一个简单的模板示例。

template<typename T>  
T max(T x, T y) {  
    return (x > y) ? x : y;  
}

上述代码定义了一个名为“max”的模板函数,它接收两个类型为T的参数并返回其中的最大值。关键字“typename”表示该参数可以是任何类型(int、char、float等)。

cout << max(1, 5) << endl;    // 输出5
cout << max(1.23, 4.56) << endl;    // 输出4.56
cout << max("cat", "dog") << endl;    // 输出dog

上述代码演示了如何使用模板函数。

默认参数

默认参数是指在定义函数时指定的,当调用该函数时,如果没有提供该参数,则使用默认值。以下是默认参数的示例:

int sum(int x, int y = 0, int z = 0) {  
    return x + y + z;  
}  

上述代码定义了一个函数“sum”,它接收三个整数参数并返回它们的和。第二个和第三个参数都具有默认值0。

cout << sum(5) << endl;    // 输出5
cout << sum(5, 10) << endl;    // 输出15
cout << sum(5, 10, 15) << endl;    // 输出30

上述代码演示了如何使用具有默认值的参数调用函数。

总结

模板和默认参数都可以提高C ++代码的灵活性和可重用性。通过使用模板,开发人员可以编写一次代码,并在许多不同的环境中使用它。使用默认参数可以简化函数的调用,从而提高代码的可读性。