$ sudo teach|
    $ sudo teach|
    IT school
  • Telegram
  • Партнёрам
  • Все курсы
$ sudo teach IT
OOO "SALEPROFIT"Контакты и реквизитыIT-Park Logo

Школа

  • Блог
  • Проверить сертификат

Сотрудничество

  • Стать учителем
  • Партнёрская программа
  • О проекте

Право

  • Оферта
  • Политика конфиденциальности

© 2023–2026 $ sudo teach IT™. All Rights Reserved. Public user contributions licensed under CC BY-SA 4.0 license with attribution required
TelegramGitHubYouTube

Статьи по теме

Тонкости C++: RAII, move-семантика и безопасная работа с ресурсами

Тонкости C++: RAII, move-семантика и безопасная работа с ресурсами

Разберём, как писать ресурсобезопасный код на современном C++: владение, перемещение объектов и типовые ловушки.

Многопоточность в C++: std::thread, мьютексы и гонки данных

Многопоточность в C++: std::thread, мьютексы и гонки данных

Объясняем основы параллельного программирования на C++11 и выше: создаём потоки, защищаем разделяемые данные и разбираем классические ошибки, которые приводят к недетерминированным багам.

AI-помощник
Обновлен 28.09.2026

C++ King | Полный курс

C++ King — с нуля до уверенной работы на современном C++ (C++11/20/23). Для начинающих и опытных. Освойте указатели, ООП, STL, многопоточность и шаблоны — и пишите быстрый, надёжный код.

Практические задания
Помощь от учителя
Поддержка 24/7
C++ King | Полный курс


Программа курса

14 разделов • 105 уроков

1

Знакомство с C++

1.3. Первая программа на C++
1.4. Системы сборки: от Make до CMake
1.5. Структура проекта на C++
1.6. Препроцессор C++
1.7. Стандарты C++: C++98 vs C++11 vs C++14 vs C++17 vs C++20 vs C++23
2

Основы языка C++

2.1. Переменные и фундаментальные типы данных
2.2. Целочисленные типы и работа с числами
2.3. Типы с плавающей точкой
2.4. Символы и булевый тип
2.5. Константы и модификаторы
2.6. Операторы в C++
2.7. Побитовые операции
2.8. Преобразование типов
2.9. Ввод и вывод данных
2.10. Область видимости и время жизни
3

Управляющие конструкции

3.1. Условный оператор if/else
3.2. Переключатель switch
3.3. Цикл while
3.4. Цикл do-while
3.5. Цикл for
3.6. break, continue, goto
3.7. Исключения: try, catch, throw
3.8. Утверждения и отладка
4

Функции и продвинутые возможности

4.1. Функции: основы
4.2. Параметры функций: передача по значению, ссылке и указателю
4.3. Возврат значений из функций
4.4. Перегрузка функций (overloading)
4.5. Параметры по умолчанию
4.6. inline функции
4.7. Рекурсия
4.8. Указатели на функции и std::function
5

Массивы, указатели и строки

5.1. Массивы: основы
5.2. Указатели: основы
5.3. Арифметика указателей
5.4. Динамическая память: new и delete
5.5. Умные указатели: unique_ptr
5.6. Умные указатели: shared_ptr и weak_ptr
5.7. Ссылки (references)
5.8. std::string: работа со строками
5.9. Структуры (struct)
6

Объектно-ориентированное программирование

6.1. Классы: основы
6.2. Конструкторы и деструкторы
6.3. Конструктор копирования и оператор присваивания
6.4. Конструктор перемещения и семантика перемещения
6.5. this, const и static в классах
6.6. Дружественные функции и классы (friend)
6.7. Наследование
6.8. Виртуальные функции и полиморфизм
6.9. Виртуальное наследование и ромбовидная проблема
6.10. Перегрузка операторов: введение
6.11. Перегрузка операторов: продвинутые темы
6.12. RAII и управление ресурсами
7

Шаблоны и обобщённое программирование

7.1. Шаблоны функций
7.2. Шаблоны классов
7.3. Специализация шаблонов
7.4. Параметры шаблона: типы, значения, шаблоны
7.5. Variadic templates (C++11)
7.6. SFINAE и type traits
7.7. Концепты (C++20)
8

Стандартная библиотека шаблонов (STL)

8.1. STL: обзор архитектуры
8.2. std::vector — универсальный динамический массив
8.3. std::list, std::forward_list — связные списки
8.4. std::deque и std::array
8.5. std::map, std::set и их варианты
8.6. std::unordered_map, std::unordered_set
8.7. std::stack, std::queue, std::priority_queue
8.8. Итераторы: теория
8.9. Алгоритмы STL: основы
8.10. Алгоритмы STL: продвинутые
9

Лямбда-выражения и функциональное программирование

9.1. Лямбда-выражения: основы
9.2. Лямбда-выражения: продвинутый захват
9.3. std::function и функциональные объекты
9.4. Range-based for и алгоритмы с лямбдами
10

Обработка ошибок и исключения

10.1. Иерархия исключений C++
10.2. noexcept и безопасность исключений
10.3. Исключения в конструкторах и деструкторах
10.4. Лучшие практики обработки ошибок
11

Ввод/вывод и работа с файлами

11.1. std::iostream подробно
11.2. Работа с файлами: std::fstream
11.3. std::stringstream и форматирование
11.4. Работа с бинарными файлами
12

Многопоточность и параллелизм

12.1. Основы многопоточности
12.2. std::mutex и синхронизация
12.3. std::atomic и lock-free программирование
12.4. std::condition_variable
12.5. std::future, std::promise, std::async
12.6. Параллельные алгоритмы (C++17)
13

Современный C++ (C++17/20/23)

13.1. Move-семантика и совершенная передача
13.2. structured bindings (C++17)
13.3. std::optional, std::variant, std::any (C++17)
13.4. std::string_view и std::span (C++17/20)
13.5. Модули C++20
13.6. Coroutines (C++20)
13.7. ranges и views (C++20)
13.8. constexpr и consteval (C++11/20)
13.9. chrono — работа со временем
13.10. random — генерация случайных чисел
14

Финальный проект и лучшие практики

14.1. Продвинутые паттерны проектирования в C++
14.2. Тестирование C++ кода
14.3. Производительность и оптимизация
14.4. Финальный проект: чат-сервер
14.5. Финальный проект: консольная игра
14.6. Карьерный путь C++ разработчика

Преподаватели

Изучите преподавательский состав

avatar

Команда $ sudo teach IT

Эксперт

Опытные преподаватели, научные руководители и их помощники ежедневно работают над созданием и улучшением курсов платформы!


Отзывы о курсе

0 отзыва

Войдите в аккаунт, чтобы оставить отзыв о курсе

Доступ навсегда
24/7 Support
cpp-king