了解template, class、typename三个关键词的含义,并掌握其使用方法,编写函数模板,返回两个值的最小值,要求能正确处理浮点型,字符型,字符串。,用c++
时间: 2023-12-11 12:02:24 浏览: 75
函数模板对数组冒泡排序
4星 · 用户满意度95%
template是C++中的一种模板机制,它可以让编写通用的代码,以适应不同类型的数据。class和typename都可以用来定义模板中的类型参数,它们的意义相同,只是使用的语法略有不同。
一个函数模板可以通过以下方式来返回两个值的最小值:
```c++
template<typename T>
T min(T a, T b)
{
return (a < b) ? a : b;
}
```
这个函数模板使用typename关键字定义了一个类型参数T,它可以是任何类型(包括浮点型、字符型和字符串等)。当函数调用时,编译器会自动根据传递的参数类型来实例化函数模板,并返回两个值中的最小值。
例如,可以使用以下方式来调用这个函数模板:
```c++
int a = 1, b = 2;
int min_int = min(a, b);
float c = 1.5, d = 2.5;
float min_float = min(c, d);
char e = 'a', f = 'b';
char min_char = min(e, f);
std::string g = "hello", h = "world";
std::string min_string = min(g, h);
```
在这个例子中,我们使用了不同类型的变量来调用函数模板,并正确地返回了它们的最小值。
阅读全文