Конспекты по курсу C++ на Физтехе, осенний семестр 2026/27. Общее вступление и как читать сайт — на главной, Конспекты МФТИ.
С чего начать
Начинать с L01 - Введение в C++: оттуда есть ссылки на все остальные страницы курса.
Лекции
| № | Лекция | Дата |
|---|---|---|
| 01 | L01 - Введение в C++ | 12.09.2026 |
| 02 | L02 - Области видимости и циклы | 19.09.2026 |
| 03 | L03 - Выражения и указатели | 26.09.2026 |
| 04 | L04 - Массивы | 03.10.2026 |
| 05 | L05 - Функции и ссылки | 17.10.2026 |
Термины
Типы данных
- Целочисленные типы — размеры, диапазоны, суффиксы литералов
- Беззнаковые типы — обёртывание и ловушки сравнения
- Типы с плавающей точкой — точность и почему нельзя сравнивать через
== - Символьный тип char — символ как число, ASCII, знаковость
- Литералы — системы счисления, типы и суффиксы
Операции и преобразования
- Выражения и операторы — арность, приоритет, ассоциативность
- Категории значения — lvalue и prvalue: материален ли результат
- Инкремент и декремент — префиксная и постфиксная формы
- sizeof — размер в байтах без вычисления выражения
- Арифметические преобразования типов — продвижение и общий тип операции
- Целочисленное деление и остаток — усечение, отрицательные, округление вверх
- static_cast — явное приведение типов
- const и constexpr — именованные константы
- Инициализация переменных — почему
int x = 0;
Логика и ветвление
- Логические операции и короткое замыкание —
&&,||, гарантии порядка - Побитовые операции —
& | ^ ~, сдвиги и их ловушки - Условный оператор if — ветвление, цепочки, потерявшийся
else - Циклы —
while,do-while,for,breakиcontinue
Имена и время жизни
- Область действия — где объект существует: блоки, автоматические и глобальные переменные
- Область видимости — где объект доступен по имени, сокрытие и
:: - Объявление и определение — имя против объекта,
extern
Указатели, память, массивы
- Указатель — адрес, разыменование,
const,nullptr,void* - Арифметика указателей — сдвиг и разность в элементах
- Висячий указатель — указатель, переживший объект
- Динамическая память —
new/delete, утечки, кто освобождает - Массив — элементы подряд, индексы, связь с указателями, многомерные
- Динамический массив —
new[]/delete[], массив массивов
Функции
- Функция — объявление, определение, сигнатура,
return, кадр стека - Передача параметров — по значению, через указатель, по ссылке, по
const& - Ссылка — другое имя объекта, привязка навсегда,
const T& - Перегрузка функций — одно имя, разные параметры, как выбирается версия
- Шаблон функции —
template <typename T>, вывод типов
Ввод-вывод
- Потоки ввода и вывода —
std::cin,std::cout,'\n'противstd::endl - Форматирование вывода —
<iomanip>, липкие и одноразовые манипуляторы
Язык и инструменты
- Компиляция и сборка — компиляторы, стадии сборки, флаги
- Подключение заголовков — как работает
#include - Неопределённое поведение — UB и как его ловить
- Кодстайл курса — правила оформления кода
Разборы кода
- L01 - Разбор - main.cpp — код, который писали на первом занятии
- L05 - Разбор - main.cpp — статические переменные, перегрузка, шаблоны