**
函数模板知识点
**
记录一下函数模板的知识点,以防以后忘记
template <typename T1,typename T2>
int mysort(T1 array[], T2 size) //告诉编译器我要使用函数模板了,不要报错
{
//if (array = NULL) //这句话导致了程序报错,查一下原因
//{
// return -1;
//}
T2 temp;
for (T2 i = 0; i < size;i++)
{
for (T2 j = i + 1; j < size; j++)
{
if (array[i] > array[j])
{
temp = array[i];
array[i] = array[j];
array[j] = temp;
}
}
}
return 0;
}
template <typename T1, typename T2>
int myprint(T1 array[], T2 size)
{
for (T2 i = 0; i < size;i++)
{
cout << array[i] << " ";
}
return 0;
}
void main()
{
int arr[] = { 34, 27, 55, 8, 97, 67, 35, 43, 22, 101, 78, 96, 35, 99 };
int i;
int len = sizeof(arr) / sizeof(*arr);
cout << "排序之前" << endl;
myprint<int, int>(arr, len);
cout << endl;
mysort<int,int>(arr, len);
cout << "排序之后" << endl;
myprint<int, int>(arr, len);
system("pause");
}