Согласно книге Сумиты Арора «Компьютерные науки на C ++», ссылочные переменные часто обрабатываются как производный тип данных, в котором есть свойство хранения адресов переменных. Это средство предоставления псевдонима существующей переменной. Переменная может быть вызвана с помощью этого альтернативного имени. Предположим, что когда мы хотим выполнить обмен двух переменных с использованием ссылок.
// function definition to swap the values.
void swap(int &x, int &y) {
int temp;
temp = x; // save the value at address x
x = y; // put y into x
y = temp; // put x into y
return;
}
void main () {
// local variable declaration:
int a = 100;
int b = 200;
cout << "Before swap, value of a :" << a << endl;
cout << "Before swap, value of b :" << b << endl;
/* calling a function to swap the values using variable reference.*/
swap(a, b);
cout << "After swap, value of a :" << a << endl;
cout << "After swap, value of b :" << b << endl;
getch();
}
Здесь обмен выполняется с использованием метода вызова по ссылке, и изменения также будут отражены в реальных параметрах. Здесь производится изменение переданных параметров. довольно легко, что служит одной из его реальных целей. Когда бы ни происходило сравнение с целочисленной переменной и ссылочной переменной во время замены, возможной ошибкой может быть ошибка несоответствия типов, так как адрес сравнивается со значением. Вот целочисленные ссылки используются для определить, что он может хранить адреса только целочисленных переменных, что, возможно, является механизмом, разработанным для устранения ошибок несоответствия типов, и заставить компилятор определить, что данный адрес содержит целое число или тип данных, заданный ссылкой, так что программа работает гладко и выполняет операции. Ссылки также исключает случайные указатели и часто предоставляет простой в использовании интерфейс.