Недавно я нашел такой код:
typedef int TenInts[10];
void foo(TenInts &arr);
Что вы можете сделать в теле foo()
, которое полезно, что вы не могли сделать, если объявление было:
void foo(int *arr); // or,
void foo(int arr[]); // or,
void foo(int arr[10]); // ?
Я нашел вопрос, который просит как передать ссылку на массив. Думаю, я спрашиваю почему.
Кроме того, только один ответ на "Когда указатель на массив полезен?" обсуждали параметры функции, поэтому я не думаю, что это дублированный вопрос.