Итак, есть три способа передать массив в функцию
I.
II.
III.
Я понял, что I. и II. практически одно и то же, они передают указатель на первый элемент.
Но как насчет передачи по ссылке int (&array)[]
?
В чем разница? Когда следует использовать int (&array)[]
?
Изначально я думал, что это синтаксис для явной передачи массива по ссылке, чтобы программист знал, что данные не копируются (поскольку все другие типы данных передаются по ссылке без создания копии).
void changeArray(int array[]) {
array[0] = 1111;
}
void changeArrayByPointer(int * array) {
array[0] = 1111;
}
void changeArray(int (&array)[]) {
array[0] = 1111;
}
Стоян
Вопрос задан11 марта 2024 г.