Основные понятия обработки исключений
Исключение – это специальный объект, который сигнализирует о возникновении ошибки или необычного состояния программы во время её выполнения.
Механизм обработки исключений
Механизм обработки исключений состоит из трёх ключевых элементов:
Блок try: блок кода, где может возникнуть исключение.
Блок catch: блок, предназначенный для перехвата и обработки исключения.
Блок finally: необязательный блок, выполняемый всегда после блока try независимо от возникновения исключения.
Пример использования механизма обработки исключений: ``cpp try { // код, который может вызвать ошибку } catch (const std::exception& e) { // обработка ошибки } finally { // действия, которые выполняются всегда } ``
Типы исключений
В языке C++ существует несколько стандартных типов исключений, таких как:
std::runtime_error: ошибка времени исполнения.std::out_of_range: выход за допустимые границы диапазона.std::bad_alloc: нехватка памяти.
Создание собственных исключений
Создать собственное исключение можно следующим образом: ``cpp class MyException : public std::exception { public: const char* what() const throw() override { return "My custom exception"; } }; ``
Пример обработки собственного исключения
```cpp void myFunction() { throw MyException(); }
int main() { try { myFunction(); } catch (const MyException& e) { std::cout << e.what() << std::endl; } } ```
Преимущества обработки исключений
Улучшение читаемости и понятности кода.
Повышение надёжности программ.
Упрощение работы с ошибками.
Пропуски для самопроверки