C++11. как работает функция swap(a, b)? я понимаю, что она меняет значение переменных, но почему в качестве аргументов принимает не адрес на переменную?
В описании std::swap не указано, что функция должна принимать аргумент типа адрес. В аргументах есть только ссылка на шаблон. Вы передаете значение по ссылке.
В описании std::swap не указано, что функция должна принимать аргумент типа адрес. В аргументах есть только ссылка на шаблон. Вы передаете значение по ссылке.
template< class T >
void swap( T& a, T& b );