Hanguk

  • 26 апр. 2012 г.
  • 926 Слова
Ссылки в С++
|
Ссылки – особый тип данных, являющийся скрытой формой указателя, который при использовании автоматически разименовывается. Ссылка может быть объявлена как другим именем, так и какпсевдоним переменной, на которую ссылается.
?
12 | // структура объявления ссылок/*тип*/ &/*имя ссылки*/ = /*имя переменной*/; |
При объявлении ссылки перед её именем ставится символ амперсанда"&", сама же ссылка должна быть проинициализирована именем переменной, на которую она ссылается. Тип данных, на который указывает ссылка, может быть любым, но должен совпадать с объектом, накоторый ссылается, то есть с типом данных ссылочной переменной. Для удобства, будем называть  переменную, на которую ссылается ссылка  "ссылочной переменной". Любое изменение значения содержащегося в ссылкеповлечёт за собой изменение этого значения в переменной, на которую ссылается ссылка. Разработаем программу, в которой объявим ссылку на объект типа int.
?
123456789101112131415161718 | // №1.cpp:определяет точку входа для консольного приложения. #include "stdafx.h"#include <iostream>using namespace std; int main(int argc, char* argv[]){    int value = 15;    int &reference = value; //объявление и инициализация ссылки значением переменной value    cout << "value     = " << value     << endl;    cout << "reference = " << reference << endl;    reference+=15; //изменяем значение переменной value посредством изменения значения в ссылке    cout << "value     = " << value     << endl; // смотрим, что получилось, как будет видно дальше значениепоменялось как в ссылке,    cout << "reference = " << reference << endl; //  так и в ссылочной переменной    system("pause");    return 0;} |
В строке 10 объявлена ссылка reference типа int  напеременную value. В строке 13 суммируется значение переменной value с числом 15, черезссылку reference. Результат работы программы (см. Рисунок 1).

Рисунок 1 -...
tracking img