Глоссарий С++

Внутренняя компоновка (Internal Linkage) - компоновка при которой идентификатор виден только в своей единице трансляции. Для этого используют спецификатор static. Также константные глобальные идентификаторы имеют внутреннюю компоновку.

Внешняя компоновка (External Linkage) - компоновка при которой идентификатор виден в других единицах трансляции. Для этого используют спецификатор extern. По умолчанию у идентификаторов внешняя компоновка.

Единица трансляции (Translation unit) - содержимое файла исходного текста .cpp с включенными в него заголовочными файлами, подаваемое на вход компилятора.

Идентификатор (Identifier) - одно из возможных наименований:
   переменной, объекта, класса, структуры, объединения, перечисления, функции;
   члена класса, структуры, объединения или перечисления;
   метки или макроса, параметра макроса;
   определения типа (typedef);
   идентификатор может состоять из больших и маленьких английских букв, цифр и знака подчеркивания в любой позиции идентификатора кроме первой.

Квалификатор (Qualifier) (типа) - одно из свойств const, volatile, restrict квалифицирующих тип. Квалификаторы const и volatile в совокупности называются cv-квалификаторами.

Ключевое слово (Keyword) - зарезервированные языком С++ идентификаторы (имена) которые нельзя использовать пользователю для идентификаторов (имен собственных переменных, функций, классов и т.д.)

Модификатор (Modifier) - вносит изменение в тип перед которым стоит. Модификаторы типа - signed, unsigned, long, short. Модификаторы доступа - private, protected, public.

Объявление (Declaration) - указывает идентификатор, а также сведения о его типе и других характеристиках. В C++ точка, в которой объявляется идентификатор, является точкой, в которой он становится видимым для компилятора. Вы не можете ссылаться на функцию или класс, объявленный позднее в блоке компиляции. Идентификаторы следует объявлять как можно ближе к точке, в которой они используются. Объявление переменной информирует компилятор о том, что где-то, возможно, в другой единице трансляции (очень грубо, в другом cpp-файле) выделено  сколько-то байт под хранение переменной такого-то типа с таким-то именем. Описание прототипа функции - это объявление функции, а описание реализация функции - это определение. Объявлений может быть много, определение должно быть одно.

Определение (Definition) - полное описание идентификатора с выделением под него памяти и созданием. Часто объявление и определение совпадают, например создание переменной или функции без прототипа. Объявлений может быть много, определение должно быть одно.

Препроцессор (Preprocessor) - программа подготавливающая исходный код к компиляции. Основные функции препроцессора это включение заголовочных файлов в текст программы, осуществление макроподстановок и раскрытия макросов, удаление комментариев.

Спецификатор (Specifier) - похож на модификатор. Есть спецификаторы класса памяти или sc-спецификаторы - auto, static, extern, register. Есть фнк-спецификаторы - overload, inline, virtual. Есть спецификатор friend и typedef. Также есть спецификаторы формата для printf, scanf, но это относится к языку Си.

Шаблон (Templates) - основа для обобщенного программирования, когда в шаблонной функции могут использоваться переменные различного типа.



2023-06-10



Понравилась страница?
Добавить в закладки
Или поделиться!

Связанные темы

Ассемблерный листинг С++
Бенчмарки в С++
Рисование в консоли windows на С++
Функции в С++
Параметры функции в С++
Глоссарий С++. Идентификаторы, квалификаторы, модификаторы, объявление, определение и т.д..
Исключения в С++. Выбрасывание и ловля исключения.
Достоинства и недостатки C++
Сборка приложения без IDE C++ с помощью MinGW и Qt
Перегрузка функций и операторов в С++
Случайные числа в С++. Полиномиальная генерация случайных чисел.
Ссылки в С++
Рекурсия в С++. Примеры рекурсивных программ и без использования.
Шаблоны C++
Наименование переменных и стиль программирования
Версия компилятора С++
Время выполнения программы C++