Промышленное производство
Промышленный Интернет вещей | Промышленные материалы | Техническое обслуживание и ремонт оборудования | Промышленное программирование |
home  MfgRobots >> Промышленное производство >  >> Industrial programming >> Язык C

Ссылки в C++: ключевые концепции и отличия от указателей

Ссылочная переменная — это псевдоним, то есть другое имя для уже существующей переменной. После инициализации ссылки переменной, можно использовать либо имя переменной, либо имя ссылки для обращения к переменной.

Ссылки против указателей

Ссылки часто путают с указателями, но есть три главных отличия:

Создание ссылок в C++

Представьте имя переменной как ярлык, приклеенный к её местоположению в памяти. Ссылку можно представить как второй ярлык на то же место. Поэтому можно обращаться к содержимому переменной либо через исходное имя, либо через ссылку. Например:

int i = 17;

Можно объявить ссылочные переменные для i так:

int& r = i;

Читайте & в таких объявлениях как ссылка. То есть первое объявление читается как «r — это целочисленная ссылка, инициализированная i». Второй — «s — это ссылка на double, инициализированная d». Пример использования ссылок на int и double:

Live Demo
#include <iostream>
using namespace std;
int main() {
    // простые переменные
    int i;
    double d;
    // ссылочные переменные
    int& r = i;
    double& s = d;
    i = 5;
    cout << "Value of i : " << i << endl;
    cout << "Value of i reference : " << r << endl;
    d = 11.7;
    cout << "Value of d : " << d << endl;
    cout << "Value of d reference : " << s << endl;
    return 0;
}

Результат компиляции и выполнения:

Value of i : 5
Value of i reference : 5
Value of d : 11.7
Value of d reference : 11.7

Ссылки обычно используются для списков аргументов функций и возвращаемых значений. Поэтому два важных аспекта, связанных со ссылками в C++, должны быть понятны программисту:

№Концепция и описание
1Ссылки как параметры — C++ поддерживает передачу ссылок как параметров функции безопаснее, чем параметров.
2Ссылка как возвращаемое значение — можно вернуть ссылку из функции C++ как любой другой тип данных.

Язык C

  1. Понимание типов данных C++: основы, модификаторы и лучшие практики
  2. Освоение операторов C++: полное руководство с практическими примерами
  3. Комментарии в C++: лучшие практики для читаемого и поддерживаемого кода
  4. Понимание конструкторов в C++: конструкторы по умолчанию, параметризованные и копирования
  5. Шаблоны классов в C++: практическое руководство
  6. Язык программирования C++: обзор и ключевые особенности
  7. Константы и литералы в C++: типы, синтаксис и лучшие практики
  8. Полное руководство по операторам C++: типы, использование и лучшие практики
  9. Работа с числовыми типами в C++: практическое руководство
  10. Ссылки в C++: ключевые концепции и отличия от указателей