Обработка устаревшей ошибки имеет тенденцию следовать методу, в котором все функции возвращают код в зависимости от успеха/сбоя. Вы должны проверить этот код и обработать (если ошибка) соответственно.
Современные языки программирования, однако, следуют за моделью исключения, где, если что-то исключительное случается, что невозможно обработать, исключение получает бросок - который продолжает всплывать до его обработки.
Мой вопрос почему мы перешли к модели исключений? В чем причины этого? Почему это лучше?
Пояснения/ссылки будут высоко оценены.