Шаг 45.
Библиотека STL.
Обработка ошибок и исключений. Стандартные классы исключений

    На этом шаге мы приведем классификацию стандартных исключений.

    Стандартная библиотека C++ неоднородна. Она содержит программный код из множества разных источников, отличающихся по стилю проектирования и реализации. Типичным примером таких различий является обработка ошибок и исключений. Одни части библиотеки - например, строковые классы - поддерживают подробную обработку ошибок. Они проверяют все возможные проблемы, которые могут возникнуть в работе программы, и генерируют исключение в случае ошибки. Другие компоненты - например, стандартная библиотека шаблонов STL и массивы valarray - оптимизируются по скорости, поэтому они редко проверяют логические ошибки и выдают исключения только в случае ошибок времени выполнения.

Стандартные классы исключений

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


Рис.1. Иерархия стандартных исключений

    Стандартные классы исключений делятся на три категории:

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




Предыдущий шаг Содержание Следующий шаг