代码实现:
#include <iostream>
using namespace std;
#include <stdlib.h> //包含rand()的头文件
template<typename T,int SIZE>//SIZE是非类型参数 非类型参数本身就是常量
void sort(T array[])
{
int i = 0;
int j = 0;
T temp = T();//零初始化
for(i = 0;i < SIZE - 1;++i)
{
for(j = 0;j < SIZE - 1 - i;++j)
{
if(array[j] > array[j + 1])
{
temp = array[j];
array[j] = array[j + 1];
array[j + 1] = temp;
}
}
}
}
int main()
{
int array[10];
for(int i = 0;i < 10;++i)
{
array[i] = rand() % 100 + 1;
}
const int size = sizeof(array) / sizeof(array[0]);
sort<int,size>(array);
for(int i = 0;i < 10;++i)
{
cout << array[i] << " ";
}
cout << endl;
return 0;
}
运行结果: