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