#includeusing namespace std; //书写函数模板 template void Sort(T tArray[], int len); template void Show(T tArray[], int len); template void Sort(T tArray[], int len) { T temp; for (int i = 0; i < len - 1; i++) { for (int j = 0; j < len - i - 1; j++) { if (tArray[j] < tArray[j + 1]) { temp = tArray[j]; tArray[j] = tArray[j + 1]; tArray[j + 1] = temp; } } } } template void Show(T tArray[], int len) { for (int i = 0; i < len - 1; i++) { cout << tArray[i] << ", "; } cout << endl; } int main(){ int iNums[] = { 56 ,47, 13, 89, 32 }; float fNums[] = { 10.8f, 28.6f, 35.5f, 50.2f, 99.9f }; double dNums[] = { 70.8, 65.9, 22.2, 84.3, 53.4 }; cout << "排序前:" ; Show(iNums, sizeof(iNums) / sizeof(iNums[0])); Sort(iNums, sizeof(iNums) / sizeof(iNums[0])); cout << "排序后:" ; Show(iNums, sizeof(iNums) / sizeof(iNums[0])); cout << endl; cout << "排序前:"; Show(fNums, sizeof(fNums) / sizeof(fNums[0])); Sort(fNums, sizeof(fNums) / sizeof(fNums[0])); cout << "排序后:"; Show(fNums, sizeof(fNums) / sizeof(fNums[0])); cout << endl; cout << "排序前:"; Show(dNums, sizeof(dNums) / sizeof(dNums[0])); Sort(iNums, sizeof(dNums) / sizeof(dNums[0])); cout << "排序后:"; Show(dNums, sizeof(dNums) / sizeof(dNums[0])); }
输出结果:


![C++ 函数模板[Function Template] C++ 函数模板[Function Template]](http://www.mshxw.com/aiimages/31/512857.png)
