定义一个函数模板,该函数的功能是将一维数组a中的元素逆序
时间: 2024-02-18 19:02:45 浏览: 63
使用函数模板进行排序
好的,我来给您定义一个函数模板。代码如下:
```cpp
template <typename T, size_t N>
void reverseArray(T (&a)[N]) {
for (size_t i = 0; i < N / 2; ++i) {
std::swap(a[i], a[N - i - 1]);
}
}
```
这个函数模板可以接收任意类型的数组,并将数组元素逆序。数组的大小在编译时已知,因此使用了一个非类型模板参数 `N` 来表示数组大小。使用 `T (&a)[N]` 来声明一个数组引用参数,确保只有数组被传递给函数,而不是指向数组的指针。在函数中,我们使用 `std::swap` 函数将相对称的元素进行交换,直到数组被完全逆序。
阅读全文