История изменений
Исправление gns, (текущая версия) :
А тебе этого аргумента мало? Из-за ручной борьбы с памятью типичный Си-плюс-плюсник боится бросать исключения в конструкторе. Забыл освободить или освободил дважды - типичные проблемы вашего кода.
Утечки памяти — не самая большая проблема современного С++. Для этого есть valgrind или segfault при первом запуске. Обычно команды backtrace в gdb хватает при наличии коры. Навороты абстракций в современной стандартной библиотеке являются проблемой гораздо более сложной для понимания. Код становится «шаблонным» не в смысле применения темплейтов, а в смысле «программистских штампов». Я буду писать так, потому, что все так пишут. И чего стоит раскрытие всех этих шаблонных классов программист перестает понимать. Исключения в конструкторах опасны тем, что деструкторы не до конца сконструированных объектов вызываться будут. Это не про память, это про consistency.
Ну или человек заболевает Александреску головного мозга.
Как что, рантайм они туда запихнули.
Да понятно, что рантайм. Я ж говорю, — нишевый язык. Или есть под него задача в асинхронной парадигме с процедурами завершения, или не надо этим пользоваться. Рантайм навязывает стиль программирования.
Исходная версия gns, :
А тебе этого аргумента мало? Из-за ручной борьбы с памятью типичный Си-плюс-плюсник боится бросать исключения в конструкторе. Забыл освободить или освободил дважды - типичные проблемы вашего кода.
Утечки памяти — не самая большая проблема современного С++. Для этого есть valgrind или segfault при первом запуске. Обычно команды backtrace в gdb хватает при наличии коры. Навороты абстракций в современной стандартной библиотеке являются проблемой гораздо более сложной для понимания. Код или становится «шаблонным» не в смысле применения темплейтов, а в смысле «программистских штампов». Я буду писать так, потому, что все так пишут. И чего стоит раскрытие всех этих шаблонных классов программист перестает понимать. Исключения в конструкторах опасны тем, что деструкторы не до конца сконструированных объектов вызываться будут. Это не про память, это про consistency.
Как что, рантайм они туда запихнули.
Да понятно, что рантайм. Я ж говорю, — нишевый язык. Или есть под него задача в асинхронной парадигме с процедурами завершения, или не надо этим пользоваться. Рантайм навязывает стиль программирования.