我写了这样的代码:
void Print(const int & dataArray[], const int & arraySize) { // problem
for(int i = 0; i<arraySize; i++) {
cout << dataArray[i] << " ";
}
cout << endl;
}
在 mian() 函数中:
`
int iArray[14] = { 7, 3, 32, 2, 55, 34, 6, 13, 29, 22, 11, 9, 1, 5 };
int numArrays = 14;
Print(iArray, numArrays);
....
`
编译器说引用数组是非法的,为什么它是非法的?我看到<effective c++>,上面说推荐我们使用const和reference,我只是尝试实现它(我是初学者),我也想知道在void Print(const int dataArray[], const int & arraySize)
参数中我使用const,&来限定arraySize,对吗?(或者它比 int arraySize 或 const int arraySize 好得多?),我也想使用 const,& 到 dataArray[],但我失败了。