getyx
не функция, а макрос.
(Игнорируйте очень запутанный тип возврата void
на этой странице; проза внизу говорит нам правду!)
Примечания
Все эти интерфейсы являются макросами. «&
» не требуется перед переменными y
и x
.
Он не вводит и не использует новую область действия, поэтому имеет прямой «доступ» к x
и y
, как они есть.
В качестве аналогии рассмотрим, как работает следующее без &
:
#define doubleIt(x) x *= 2
int main()
{
int x = 1;
doubleIt(x);
}