Здравствуйте, Erop, Вы писали:
E>Здравствуйте, remark, Вы писали:
E>>>Ну вот примеров удачного использования исключений я видел много, а шаблонов -- мало. А вот идей Александреску -- ни одного случая
E>>>На самом деле код без исключений не такой уж и плохой обычно.
R>>Ну это пока проект не особо большой. А когда проект переступает определённую черту, то коды ошибок начинают постепенно всасывать, причём со временем всё больше. имхо.
E>В целом я абсолютно согласен, что есть некоторый объём сложности задачи, когда обработка ошибок при помощи продуманного использования исключений, и при условии внедрения некоторых других правил (полезных безотносительно получается проще и поддерживаемее, чем при помощи кодов возврата.
E>Ещё я согласен, что при помощи исключений можно написать более надёжную и предсказуемую программу. Но при этом это надо суметь сделать. Тем не менее, хотя сами по себе исключения сложнее кодов возврата, порог этот низкий очень и в многих задачах обрабатывать ошибки при помощи исключений проще. И тогда их конечно же надо использовать.
E>Но, скажем, в такой программе:
E>E>int main( int, const char*[] )
E>{
E> chra c;
E> while( cin >> c )
E> cout << c;
E> return 0;
E>}
E>
E>Исключения использовать, ИМХО, неправильно
Я согласен, что и идеи А в такой программе применять не стоит
R>>Но согласись, что усключения гораздо более сложная вещь, чем коды возврата, что для их применения надо знать больше, что код становится не таким очевидным (особенно для людей, знакомых с исключениями поверхностно).
E>Я конечно согласен, что сложнее. Но про "людей, занкомых поверхностно" -- это немного мимо кассы. Конструкции из Loki не годятся даже для людей неповерхностно знакомых с шаблонами
Они просто слишком сложные.
Я тебя уверяю, что есть вещи гораааздо более сложные, и при этом люди, которым это надо разбираются в них очень хорошо.
Как пример, могу привести некоторые раздели физики — типа квантовой механики, СТО и т.д.