<分区>
我正在尝试通过视频类(class)学习如何使用指针和引用,但我发现指针和引用非常复杂。
我正在尝试做一个非常基础的练习,这样我就可以了解它是如何工作的。它看起来像这样:
void print(int &array, int size)
{
for (int i = 0; i < size; i++)
{
cout << array[i] << " ";
}
}
int main()
{
int n, a[10];
cin >> n;
for (int i = 0; i < n; i++)
{
cin >> a[i];
}
print(a, 5);
return 0;
}
它不起作用,因为我正在传递一个数组作为引用。如果我将函数原型(prototype)更改为此
void print(int *array, int size)
它完美地工作。
谁能解释一下为什么?我认为在这种情况下使用指针或引用应该是相同的。两者都会导致数组。我错了吗?