Это не вопрос обозначений.
Существует 3 способа передачи параметров в функцию:
- по значению
- по ссылке
- по указателю
В amp_swap
фактические параметры передаются по ссылке. Это введено и действительно только в C ++.
В star_swap
вы передаете параметры с помощью указателей. Это был оригинальный C-way.
В основном, если вы используете C ++, рекомендуется использовать ссылку, поскольку она более читаема для переменных. Если вам нужны указатели, во что бы то ни стало используйте их.
И не забудьте использовать знак &
при объявлении метода ссылками, потому что в противном случае вы получите ошибку. Если вы не объявите ссылку в amp_swap
, функция ничего не поменяет. Потому что таким образом вы используете метод 1 (передать только значения параметров) и в функции будут созданы две новые автоматические переменные, которые живут только в области действия функции. Таким образом, исходные внешние переменные не будут затронуты.