4

可能重复:
对数组的引用参数有什么用处?

void myFunction( int (&arg)[4] );

void myfunction(int arg[4]);

不同的?它们有何不同?第一个做什么,我怎么称呼它?

4

1 回答 1

7

它们是不同的。第一个引用一个 4 个整数的数组作为它的参数。第二个将指向未知整数数组的第一个元素的指针作为其参数。

int array1[4] = {0};
int array2[20] = {0};

void myFunction1( int (&arg)[4] );
void myFunction2( int arg[4] );

myFunction1( array1 ); // ok
myFunction1( array2 ); // error, size of argument array is not 4

myFunction2( array1 ); // ok
myFunction2( array2 ); // ok
于 2012-10-17T15:11:05.693 回答