> -- GeoVit писал(а):
> Вариант 1: try a:=x/y except {значение а не изменяется} end;Вариант 2: if abs()>=eps then a:=x/y;Какой вариант будет безопаснее в эксплуатации, а?То, о чём Вы говорите, называется скрытой ошибкой, которая закрывается "мягкой подушкой" исключения, но в ран-тайме. Такая практика, к сожалению, имеет место, но я бы назвал её категорически недопустимой! Потому что никто заранее не скажет, какие побочные эффекты может иметь сокрытие такой опечатки.
Поэтому второй вариант предпочтительней. Он навернётся сразу.

> -- Algo писал(а):
> Вот если этих проверок будет 20 штук или ошибка в "глубине" программы. Как поступать тогда?Давайте договоримся так, что ошибкив программебыть не должно!
Вариант - аварийная ситуация во внешней среде - но это совершенно другое дело, и методы другие.
Как я написал в первом посте, исключения можно рассматривать как способ оптимизации (свёртки сложного графа алгоритма обработки всех вариантов, в т.ч. ошибочных ситуаций). Однако этот тезис требует доказательства. Я бы хотел увидеть такое доказательство (больше пользы или вреда от такой свёртки). Для этого и открыл тему.