C ++ использует передачу по значению, если вы явно не используете ссылки. Теперь int* arr
является указателем, и этот указатель здесь передается по значению. Это означает, что вы получаете копию указателя, но не указательных элементов. Таким образом, вы можете обновить arr[0]
, но не arr
.
Сказав это, не используйте указатели, подобные этому. Используйте std::vector<int>& arr
.