Основные концепции
Этот раздел содержит определения специфической терминологии и концепций, используемых при описании языка программирования C++.
Программа на C++ представляет собой последовательность текстовых файлов (обычно заголовочные и исходные файлы), содержащие объявления. Они проходят трансляцию, чтобы стать исполняемой программой, которая выполняется, когда реализация C++ вызывает её главную функцию.
Некоторые слова в программе на C++ имеют специальное значение и известны как ключевые слова. Другие могут использоваться как идентификаторы. Комментарии игнорируются во время трансляции. Программы на C++ также содержат литералы, значения символов внутри которых определяются наборами символов и кодировками. Некоторые символы в программе должны быть представлены с помощью последовательностей экранирования.
Сущности программы на C++ — это значения, объекты, ссылки, структурированные связки(с C++17), функции, перечислители, типы, члены класса, шаблоны, специализации шаблонов, пакеты параметров(с C++11) и пространства имён. Макросы препроцессора макросы не являются сущностями C++.
Объявления могут вводить сущности, связывать их с именами и определять их свойства. Объявления, которые определяют все свойства, необходимые для использования сущности, являются определениями. Программа должна содержать только одно определение любой нестатической функции или переменной, которая используется в соответствии с ODR.
Определения функций обычно включают последовательность операторов, некоторые из которых включают выражения, которые определяют вычисления, выполняемые программой.
Встреченные в программе имена связаны с объявлениями, которые их ввели, с помощью поиска имени. Каждое имя является допустимым только в части программы, называемой его областью видимости. Некоторые имена имеют связь, что делает их относящимися к тем же сущностям, когда они появляются в разных областях видимости или единицах трансляции.
Каждый объект, ссылка, функция, выражение в C++ связаны с типом, который может быть базовым, составным или пользовательским, полным или неполным и т. д.
Объявленные объекты и объявленные ссылки, которые не являются нестатическими данными членами, являются переменными.
См. также
| Документация по C для Основных концепций |
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/w/cpp/language/basic_concepts