使用函数模板实现任意类型的数组的降序排序。
时间: 2024-03-20 11:41:59 浏览: 57
使用函数模板进行排序
可以使用以下函数模板来实现任意类型的数组的降序排序:
```cpp
template<typename T>
void sortArrayDescending(T arr[], int size) {
for (int i = 0; i < size - 1; i++) {
for (int j = i + 1; j < size; j++) {
if (arr[i] < arr[j]) {
T temp = arr[i];
arr[i] = arr[j];
arr[j] = temp;
}
}
}
}
```
这个函数模板使用了模板类型参数 `T` 来表示任意类型的数组元素类型。函数内部使用冒泡排序算法来实现降序排序。
要使用这个函数模板对一个数组进行降序排序,只需要将数组和数组大小作为参数传递给函数即可。例如:
```cpp
int main() {
int intArr[] = { 4, 2, 8, 5, 1, 9 };
sortArrayDescending(intArr, 6);
double doubleArr[] = { 3.2, 1.5, 4.7, 2.8 };
sortArrayDescending(doubleArr, 4);
return 0;
}
```
这个例子展示了如何使用函数模板来对一个 `int` 类型的数组和一个 `double` 类型的数组进行降序排序。
阅读全文