Свой класс exception c++. Создание собственного класса исключений. С++ для начинающих. Урок #123

YOUTUBE · 01.12.2025 04:00

Ключевые темы и таймкоды

Введение в создание собственного класса исключений

0:00
  • Сергей объясняет, что в прошлых уроках рассматривался базовый класс исключений.
  • Базовый класс имеет метод ввода, который принимает строку для сообщения об ошибке.
  • Для получения дополнительной информации о возникшей ошибке, разработчики могут создавать свои собственные классы исключений.

Пример использования собственного класса исключений

0:59
  • Пример из прошлого урока показывает, как использовать метод коды для получения дополнительной информации об ошибке.
  • Разработчики могут создавать свои собственные классы исключений для более детальной информации о произошедшей ошибке.
  • В этом уроке будет показано, как создать собственный класс исключений.

Создание класса MyException

2:23
  • Сергей создает класс MyException и объясняет, как его можно использовать с ключевым словом throw.
  • Пример функции, которая выводит значение переменной и бросает исключение при определенных условиях.
  • Проблема с перехватом исключений, созданных с помощью ключевого слова throw.

Унаследование класса MyException

4:17
  • Сергей объясняет, что для перехвата исключений нужно наследовать класс от базового класса исключений.
  • Пример кода, который показывает, как перехватить исключение с помощью базового класса.
  • Унаследование позволяет базовому классу работать с исключениями, созданными наследниками.

Реализация собственного функционала исключений

6:27
  • Сергей показывает, как реализовать собственный функционал исключений.
  • Пример кода, который выводит состояние данных при возникновении ошибки.
  • Добавление поля data-state для хранения состояния данных и метода getDataState для его получения.

Заключение

10:36
  • Сергей объясняет, как использовать метод getDataState для вывода состояния данных при возникновении ошибки.
  • Пример кода, который выводит состояние переменной, вызвавшей ошибку.
  • Подчеркивается, что реализация собственного функционала исключений зависит от конкретных потребностей проекта.

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

10:53
  • Обнаружена ошибка в строке, передаваемой в метод.
  • При передаче числа, равного единице, возникает собственное исключение.
  • Используется метод гет-дейта-стейт для получения расширенной информации об ошибке.

Работа с несколькими блоками catch

11:49
  • Возможность добавления любого функционала в класс Exception.
  • Использование нескольких блоков catch для обработки разных типов исключений.
  • Первый блок catch ловит ошибку конкретного типа, остальные не отрабатывают.

Обработка исключений при передаче числа меньше нуля

12:44
  • При передаче числа меньше нуля возникает исключение базового класса Exception.
  • При передаче единицы возникает исключение типа MyException.
  • Важно указывать более конкретные блоки catch перед более общими.

Заключение и призыв к подписке

14:48
  • Более узкоспециализированные блоки catch должны быть указаны первыми.
  • Призыв поставить лайк, поделиться видео и подписаться на канал для получения новых уроков.
  • Благодарность за внимание и прощание.