Учебник C++ для начинающих
Высокопроизводительный язык для систем, игр и встраиваемой техники. Изучим синтаксис, типы, указатели, классы и управление памятью.
Курс «C++» состоит из 7 разделов и 25 уроков: C++ Основы, Управление потоком в C++, Функции и массивы в C++, Указатели и ссылки в C++, ООП в C++, STL в C++ и Шаблоны и исключения в C++. Уроки идут по порядку — от основ к более сложным темам, в каждом есть объяснение с примерами, а в конце — вопросы для самопроверки. К урокам привязаны задачи с автоматической проверкой: прочитали тему — сразу закрепили её кодом.
Программа курса
1 C++ Основы
- Введение в C++: история, принципы и причины использования
Узнайте, почему C++ является одним из самых популярных языков программирования в мире! Наша статья предоставляет подробный обзор основных принципов программирования на C++, его истории и развития, а также причин, почему многие программисты используют его для создания быстрых, мощных и масштабируемых приложений. Погрузитесь в мир C++ уже сегодня!
- Основные принципы программирования на C++
Основные принципы C++: компиляция, zero-overhead, RAII, три уровня абстракции — для чего используют язык и что делает его уникальным.
- Компиляция первой программы на C++
В этой статье мы рассмотрим, как скомпилировать первую программу на C++ в операционных системах Linux и Windows.
- Ключевые слова и идентификаторы в C++
Полное руководство по ключевым словам и идентификаторам в C++ для начинающих: изучите основы синтаксиса C++, включая определения, правила именования и примеры. Подходит для новичков в программировании, стремящихся понять и применять ключевые элементы C++ в своих проектах. Получите ценные советы и исторические справки для лучшего понимания языка.
- Числа и математические функции в C++
Числа в C++: int, double, long long, диапазоны типов, целочисленное деление и математические функции sqrt, pow, round из заголовка cmath.
- Операторы в C++
Все операторы C++: арифметические, сравнения, логические, присваивания, инкремент/декремент, тернарный и побитовые — таблицы и разбор ловушек.
- Типы данных в С++
Типы данных в С++ являются одним из основных понятий при работе с языком программирования. Типы данных определяют какие данные могут быть представлены в программе, а также как они будут использоваться. В С++ есть шесть базовых типов данных: целочисленные, вещественные, логические, символьные, строковые и массивы.
- Введение в C++: история, принципы и причины использования
2 Управление потоком в C++
- Условия: if, else и switch в C++
Условные операторы C++: if/else, else if, тернарный оператор и switch — с примерами, пояснениями и типичными ловушками.
- Циклы: for, while и do-while в C++
Циклы в C++: for, while, do-while, операторы break и continue — полный разбор с примерами и вложенными циклами.
- Условия: if, else и switch в C++
3 Функции и массивы в C++
- Функции в C++
Функции в C++: объявление, void, передача параметров по значению и ссылке, перегрузка функций и рекурсия с примерами.
- Массивы и строки (std::string) в C++
Массивы и строки в C++: объявление, индексация, перебор, range-based for, std::string — методы length, substr, find с практическими примерами.
- Перегрузка функций, аргументы по умолчанию и рекурсия в C++
Перегрузка функций, значения аргументов по умолчанию и рекурсия в C++ с примерами.
- Функции в C++
4 Указатели и ссылки в C++
- Указатели в C++
Указатели в C++: адреса памяти, операторы & и *, арифметика указателей, new/delete, динамические массивы и типичные ошибки работы с памятью.
- Ссылки в C++ и отличие от указателей
Ссылки в C++: объявление, const-ссылки, передача по ссылке в функции, сравнение с указателями — когда что выбирать.
- Динамическая память в C++: new и delete
Динамическое выделение памяти в C++: операторы new и delete, массивы new[]/delete[], утечки памяти.
- Умные указатели в C++: unique_ptr и shared_ptr
Умные указатели C++: unique_ptr, shared_ptr, make_unique, make_shared — автоматическое освобождение памяти.
- Указатели в C++
5 ООП в C++
- Классы и объекты в C++
Классы и объекты в C++: поля, методы, конструктор, деструктор, инкапсуляция private/public — основы ООП с примерами.
- Наследование и полиморфизм в C++
Наследование и полиморфизм в C++: базовые и производные классы, виртуальные функции, override, абстрактные классы с примерами.
- Структуры (struct) и перечисления (enum) в C++
Структуры struct и перечисления enum/enum class в C++: объявление, инициализация, отличие struct от class.
- Перегрузка операторов в C++
Перегрузка операторов в C++: operator+, operator<< для пользовательских типов с примерами.
- Классы и объекты в C++
6 STL в C++
- std::vector в C++
std::vector в C++: динамический массив, методы push_back, pop_back, size, at, перебор, resize — самый используемый контейнер STL с примерами.
- std::map и unordered_map в C++
std::map и unordered_map в C++: словарь ключ-значение, вставка, поиск через find и count, перебор итераторами и сравнение контейнеров.
- Алгоритмы STL в C++
Алгоритмы STL в C++: sort, find, count, reverse, min_element, accumulate — стандартные алгоритмы из заголовка algorithm с примерами.
- std::vector в C++
7 Шаблоны и исключения в C++
- Шаблоны функций и классов в C++ (templates)
Шаблоны в C++: template, typename, шаблонные функции и классы, обобщённый код для разных типов.
- Обработка исключений в C++: try, catch, throw
Исключения в C++: try, catch, throw, std::runtime_error, метод what — обработка ошибок без падения программы.
- Шаблоны функций и классов в C++ (templates)