Microsoft Visual C++ и MFC. Программирование для Win95 и WinNT


Ссылки


В языке Си++ вы можете определить ссылку на объект - переменную или объект класса. Ссылка содержит адрес объекта, но вы можете использовать ее, как будто она представляет сам объект. Для объявления ссылки используется оператор &.

В следующей программе мы определили переменную iVar типа int и ссылку iReferenceVar на нее. Затем мы отображаем и изменяем значение переменной iVar используя ее имя и ссылку.

// Включаемый файл для потокового ввода/вывода

#include <iostream.h>

void main(void)

{

      // Определяем переменную iVar

      int        iVar = 10;

      // Определяем ссылку iReferenceVar на переменную iVar

      int&     iReferenceVar = iVar;

      // Отображаем значение переменной и ссылки

      cout << "iVar = " << iVar << "; iReferenceVar = " <<

                   iReferenceVar << '\n';

      // Изменяем значение переменной iVar пользуясь ссылкой

      iReferenceVar = 20;

      // Отображаем значение переменной и ссылки

      cout << "iVar = " << iVar << "; iReferenceVar = " <<

                   iReferenceVar << '\n';

}

Вы можете использовать ссылки для передачи параметров функциям. При этом фактически вы передаете функции указатель на объект, представленный ссылкой. Внутри функции вы можете работать с ссылкой как с самим объектом, а не как с указателем.

Функция может не только принимать ссылки в качестве своих параметров, она также может возвращать ссылку. Такую функцию можно привести в левой части оператора присваивания.



Содержание раздела