Какие и почему вы предпочитаете исключения или коды возврата?
Мой вопрос заключается в том, что большинство разработчиков предпочитают для обработки ошибок, исключений или кодов возврата ошибок. Пожалуйста, будьте специфичны для языка (или языковой семьи) и почему вы предпочитаете одно из другого.
Я спрашиваю это из любопытства. Лично я предпочитаю коды возврата ошибок, так как они менее взрывоопасны и не заставляют пользовательский код платить штраф за производительность исключений, если они этого не хотят.
Обновление: спасибо за все ответы! Я должен сказать, что хотя мне не нравится непредсказуемость потока кода с исключениями. Ответ о коде возврата (и об их ручках старшего брата) действительно добавляет шум к коду.