本文主要是介绍C++ 函数模板使用实例,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
#include <iostream>
using namespace std;
//交换变量值函数模板
template<class T>
void swapTemp(T& a, T& b)
{
T tmp = a;
a = b;
b = tmp;
}
//打印数组元素模板
template<class T>
void printTemp(T array[], int num)
{
int i = 0;
for (i = 0; i<num; i++)
{
cout<<array[i]<<" ";
}
cout<<endl;
}
//数组元素排序模板
template<class T>
void sortTemp(T array[], int num)
{
int i = 0;
int j = 0;
int max = 0;
for (i = 0; i<num-1; i++)
{
max = i; //假设最大元素下标为i
for (j = i+1; j<num; j++) //循环找出最大值
{
if (array[max] < array[j])
{
max = j;
}
}
if (max != i) //max!=i,说明遇到比下标i元素更大的值,需要交换
{
swapTemp(array[i], array[max]);
}
}
}
void test1()
{
int array[]={3,6,9,8,0,4, 2, 1};
int num = sizeof(array)/sizeof(int);
sortTemp(array, num);
printTemp(array,num);
char str[]="bacdef";
int num1 = sizeof(str)/sizeof(char);
sortTemp(str, num1);
printTemp(str,num1);
}
int main()
{
test1();
return 0;
}
这篇关于C++ 函数模板使用实例的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!