Партнерка на США и Канаду по недвижимости, выплаты в крипто
- 30% recurring commission
- Выплаты в USDT
- Вывод каждую неделю
- Комиссия до 5 лет за каждого referral
Лексика
Комментарии, операции, ключевые слова, идентификаторы, литералы
Единицы трансляции
Фазы трансляции
Базовые понятия
Объявления и определения
Полные и неполные типы
Статический и динамический тип
ODR
Связывание имен
Поиск имен: области видимости, сокрытие имен
main, инициализация нелокальных объектов, завершение программы
lvalue и rvalue
Модель памяти и объектная модель
Класс памяти
Время жизни объектов, явное управление временем жизни
Объектное представление и представление значения
Выравнивание
Выражения
Точки следования, вычисление аргументов функции и т. п.
Приоритет операций
Явные преобразования: functional cast, c-style cast, const_cast, static_cast, reinterpret_cast
Арифметические операции
Различие префиксных/постфиксных операций
Логические операции
Битовые операции
Присваивания
Тернарное условие
Операция «запятая»
Константные выражения
Инструкции (statements)
Условия
Циклы
Видимость переменной цикла for
Переход
Объявления
Разрешение неоднозначности между инструкциями и объявлениями
Сложные объявления: массивы указателей на функции, функции, возвращающие указатель на функцию и т. п.
Встроенные типы
void
Диапазоны значений встроенных типов
Интегральные (целые) типы: bool, char, wchar_t, знаковые, беззнаковые и т. д.
Особенности беззнаковых типов, представление, арифметика по модулю
Плавающие типы
Стандартные преобразования встроенных типов
Указатели
Валидность указателей
Разыменование невалидных и нулевых указателей
void*
Стандартные преобразования указателей
Явные преобразования указателей
Ссылки
Инициализация
Продление времени жизни временных объектов
Отсутствие типа «ссылка на …» на стадии анализа выражений
Массивы
Стандартные преобразования, связь с указателями
Перенос cv-квалификаторов
«Многомерные» массивы
Функции
Стандартные преобразования, связь с указателями
Аргументы по умолчанию
Массивы в качестве аргументов
Переменное число аргументов
Механика вызова функции: копирование аргументов, возвращаемого значения, оптимизации
inline-функции
Ссылки и указатели на функции
Перечисления
CV-квалификаторы
Агрегаты
Определение
Инициализация
POD-типы
Определение
Манипуляции, допустимые только для POD-типов
Классы
Предварительное объявление
Совместимость типов по именам, а не по структуре
Статические члены
Данные-члены
Функции-члены
Типы-члены
Битовые поля
Локальные классы
Вложенные классы, определение вне содержащего класса
Конструкторы
Деструкторы
Инициализация базовых классов и членов
Преобразования, заданные пользователем
union
Отсутствие наследования, допустимость функций-членов, конструкторов и деструкторов
Допустимые члены, отсутствие анонимных struct в качестве членов
Инициализация
Анонимные объединения
class, struct
Отличие class и struct
Наследование
Множественное наследование
Виртуальное наследование
Виртуальные функции
Абстрактные классы
Контроль доступа
Связь с наследованием
Друзья
Битовые поля
Указатели на члены
Базовая семантика
Стандартные преобразования
Явные преобразования
Перегрузка
Перегрузка операций
Выбор перегруженной функции
namespace
ADL
Анонимные namespace
Определение членов
Синонимы
Using declaration
Using directive
Шаблоны
Зависимые и независимые имена, поиск имен
Параметры: типы, не-типы, шаблоны
Аргументы по умолчанию
Предварительное объявление
Шаблоны классов
Шаблоны функций
Шаблоны членов
«Друзья»
Определение статических членов шаблонов
Определение членов шаблона класса
Перегрузка шаблонов функций
Частичная специализация шаблонов классов
Частичное упорядочение шаблонов функций
Явная специализация
Неявное инстанциирование
Явное инстанциирование
Явное указание аргументов шаблона функции
Определение аргументов шаблона функции по аргументам функции
SFINAE
Исключения
Выбрасывание
Связь с конструкторами и деструкторами
Обработка, поиск обработчиков
Exception specification, std::bad_exception
std::uncaught_exception(), std::terminate(), std::unexpected()
RTTI
dynamic_cast
typeid, std::type_info
asm declaration
Стандартный синтаксис
Нестандартность синтаксиса Microsoft


