数组形参
- 数组作为形参有两种形式:
- 引用
- 非引用
非引用方式
- 常用方式为非引用,将形参定义为数组元素类型的指针
void func(int* p);
void func(int p[]);
void func(int p[10]);
- 非引用方式时,即使在形参中显示声明了数组的大小,也会被编译器忽略
引用方式
- 带模版与不带模版
- 一般的引用形式
// 调用此函数,必须传递大小为10的数组
void func(int(&p)[10]);
- 使用非类型模版形参
template<size_t size>
void func(int(&p)[size]);
- 当调用此类函数时,会从数组的实参计算非类型参数的值。
- 接上,这种方式,可以传递任意大小的数组。