В C++ существуют две основные стратегии обработки ошибок: 1
Для обработки исправимых ошибок предпочтительнее использовать исключения, так как они заставляют вызывающий код распознавать условие ошибки и обрабатывать его. 3 Необработанные исключения останавливают выполнение программы. 3
Для обработки неисправимых ошибок можно использовать утверждения (assert()) и функцию abort(). 13
Также слой обработки ошибок должен быть чётко отделён от слоя бизнес-логики приложения. 2