C++允许形参是数组的引用,此时,引用形参绑定到对应的实参上,也就是数组。
void print(int (&arr)[10]) {
for (auto i:arr) {
cout << i << endl;
}
}
需要保证的是:实参必须是含有10个整数的数组。
一种更清晰的写法:
typedef int arrTen[10];
void print(arrTen &arr) {
for (auto i:arr) {
cout << i << endl;
}
}
模板写法:
template <typename T, size_t N>
size_t get_count(T (&arr)[N]) {
return sizeof(arr)/sizeof(T);
}
int main(int argc, char **argv) {
int arr[5] = {1,2,3,4,5};
cout << get_count(arr);
return 0;
}
本文探讨了C++中如何使用数组的引用作为函数参数,以及如何通过模板函数获取数组的元素数量。介绍了两种声明数组引用的方法,并展示了如何利用模板特性获取数组的实际长度。
1650

被折叠的 条评论
为什么被折叠?



