重複の可能性:
配列への参照パラメータについて何が便利ですか?
は
void myFunction( int (&arg)[4] );
と
void myfunction(int arg[4]);
違う?それらはどう違いますか?最初は何をし、どのように呼び出すことができますか?
重複の可能性:
配列への参照パラメータについて何が便利ですか?
は
void myFunction( int (&arg)[4] );
と
void myfunction(int arg[4]);
違う?それらはどう違いますか?最初は何をし、どのように呼び出すことができますか?
それらは違う。最初のものは、引数として 4 つの int の配列への参照を取ります。2 つ目は、不明な数の int の配列の最初の要素へのポインターを引数として取ります。
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