Как лучше написать свой класс исключений для своей библиотеки? Интересует от чего что надо наследовать.
Например, есть класс строки.
Будем генерить исключение при попытке доступа к несуществующему символу строки.
Если делаем свой класс исключений, то нужно ли класс ExceptionOutOfRange наследовать множественно от std::out_of_range и своего Exception?
Стоит ли вообще делать такой класс, а не кидать std::out_of_range?
И тому подобные вопросы.

21 Авг 2019 в 07:07
175 +1
0
Ответы
1

При создании собственного класса исключений для вашей библиотеки, рекомендуется наследовать его от стандартного класса исключений std::exception. Это базовый класс для всех стандартных исключений в стандартной библиотеке C++. Для вашего конкретного случая, можно создать свой класс исключения ExceptionOutOfRange и унаследовать его от std::out_of_range, если это имеет смысл в контексте вашей библиотеки.

Определение, следует ли использовать стандартные классы исключений или создавать собственные, зависит от конкретной ситуации. Если стандартный класс исключений вполне подходит для вашей задачи (например, std::out_of_range в вашем случае), то лучше воспользоваться им. Однако, если ваше исключение имеет уникальные свойства или требования, которые не учитываются стандартными классами исключений, то имеет смысл создать собственный класс исключений.

В общем случае, ключевым моментом является четкость и строгость обработки исключений в вашем коде. Независимо от выбора между использованием стандартного класса исключений или созданием собственного, важно грамотно обрабатывать исключения и сообщать об ошибках пользователю вашей библиотеки.

20 Апр 2024 в 13:07
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Гарантированные бесплатные доработки в течение 1 года
Быстрое выполнение от 2 часов
Проверка работы на плагиат
Поможем написать учебную работу
Прямой эфир