Здравствуйте, serg_joker, Вы писали:
_>Вы действительно хотите, чтобы для такого кода:
_>, вместо того, чтобы программа упала с криком "чувак, ты налажал!", ф-ция ShouldBackup была просто тождественно равной false? _>И потом отлаживаться сильно дальше, не понимая, какого хрена? Ясно, что в таком плоском примере всё очевидно, но обычно же оно сильно не так.
_>Неужели быстрая смерть, ровно один раз, с крайне простой диагностикой хуже, чем, программа, которая ведёт себя странно?
Я думаю меньше всего мы хотим чтобы программа падала из за любой помарки. Вот если бы там какой нибудь исскуственный интелект просчитал что вот этот конкретно невозврат повлияет дальше на критически важную часть функционирования, но нет. Но вообще критически важные части должны быть специально защищены от неверных данных или еще чего там, проверки, эксцепшионы.. В таких случаях максимум вмешательства в работу проги от тупого компилятора это выдача диагностического сообщения если есть куда выдавать. Если некуда типа ГУИ, ну пусть диалог выдаст и то не факт что это хорошо. К тому же эта конкретно ошибка проверяется на этапе компиляции/линт и выдача предупреждения тогда имеет смысл. Может даже и не предупреждения а ошибки компиляции если прогер так установил.