> -- Сергей Прохоренко писал(а):
> Удаляю вариант ответа "Исключения вообще не нужны".
Очень зря. Вы рискуете повторить путь С++ и угробить редактор ещё в зародыше.
С проблемой исключений я знаком очень хорошо и не могу припомнить ни одного достойного примера, когда они действительно были не заменимы, или при их применении повышалась читаемость (наглядность) кода.

Основные причины применения исключений:
* небрежность в конструировании (не думаем о некоторых ситуациях, которые потом затыкаем исключениями);
* поспешность в программировании (не желаем заморачиваться с некоторыми ситуациями и оставляем их на откуп продолжателям (например, Java));
* дань моде (очень часто видел код, где на исключениях была построена логика).

А примеры, которые приводили с драйверами устройств и т.п. смешны. Я в своё время писал достаточно много драйверов (на ассемблере) для 8086, 286, 386, 486 машин и успешно обходился без исключений, потому что для драйвера отсутствие связи с устройством - одна из штатных ситуаций, которая должна быть предусмотрена разработчиком, иначе это плохой драйвер.