Выступающий 1: Оказывается, мы можем успешно поменять значения в двух переменные путем передачи их в функционировать не по значению или по копии, но по ссылке или по их адресам. Другими словами, мы должны использовать что-то известно как указатель. Указатель, действительно, это только адрес некоторой переменной. И поэтому, если мы предоставляем функцию с именем, скажем, поменять с адресом переменная а также адрес другой переменная, своп должен быть уполномочен идти к каждому из этих адресов а на самом деле изменить значения, которые существуют. Давайте рассмотрим это в контексте. Давайте переопределить своп следующим образом. Во-первых, давайте изменим не быть внутр но быть указателем на междунар или адрес в междунар. Тогда давайте сделаем то же самое для B, изменяя это от междунар быть указателем на Int или адрес в междунар. Тогда внутри свопа, давайте еще объявить TMP так что мы имеем временное место для значения х годов. Но'S значение не является сам по себе, так, Опять же, в настоящее время является адрес некоторого междунар. Так что, если мы хотим идти по этому адресу и получить Int по этому адресу, у нас есть разыменовать этого указателя, и путем звезда оператор, писать звезде. Далее, я не хочу, чтобы изменить значение. Я хочу, чтобы изменить значение на , имея в виду, опять же, что это адрес. Таким образом, чтобы сделать это, я снова нужно сказать звезда получает. А теперь я хочу, чтобы положить в стоимости вот на б, не значение Ь, которые также является адресом. Итак, еще раз говорю, ночлег. Тогда в моей последней строке, мне нужно переписать то, что по адресу б с то, что было в оригинальном расположении в. Чтобы сделать это, я звезда б получает TMP. Теперь в конце дня, это функция по-прежнему просто три строки кода. Но потому что это манипулирование значения путем их адрес, а не сырые значения, которые были переданы в Функция, я утверждаю, что своп теперь уполномочены изменять значения, которые передаются в через их адреса. Но мне нужно сделать одно изменение все еще. Я больше не может пройти в х и у самих себя. Мне нужно пройти в адресах х и у. А для этого, мне нужно некоторые немного другие обозначения наверху. Я хочу, чтобы поменять х и у, передавая адрес х, обозначается амперсанд х, а также адрес у, обозначается амперсанд у. Точно так же, наверху теперь мне нужно изменить прототип функции, чтобы соответствовать изменение, которое я сделал, так что , опять же, это указатель на междунар. б, опять же, это указатель на междунар. И теперь я могу спасти мой файл. И давайте перекомпилировать и запустить его. Сделать своп точка слэш своп. И на этот раз, х и у действительно сейчас местами так, что их значения не 1 и 2, но 2 и 1.