В Чтв, 19/03/2009 в 23:23 +0300, Artem Chuprina пишет: > Покотиленко Костик -> [email protected] @ Thu, 19 Mar 2009 > 20:19:52 +0200: > > >> >> Как только ты на C выбираешь достаточно высокий уровень, ты немедленно > >> >> получаешь высокоуровневый подъязык с неудобным синтаксисом и > >> >> ... правильно, все равно заботой о распределении памяти (почистить за > >> >> тобой все равно никто не сможет). > >> > > >> > В GTK+, создаёшь виджет "окно", напихиваешь туда кучу других виджетов, > >> > потом делаешь gtk_widget_destroy() на "окно", и освобождаешь его и всех > >> > потомков одной командой. > >> > >> После чего в памяти навечно остаётся висеть какой-нибудь pixbuf, > >> используемый в каком-нибудь image. Поскольку понадеялись на > >> gtk_widget_destroy и документацию к gtk_image_new_from_pixbuf на > >> предмет освобождения памяти перечитывать не стали. > > ПК> Баги есть везде. Э про это не знаю, pixbuf'ом практически не > ПК> пользовался. > > "Этот баг у них фичей зовется." В смысле - документирован, а не > исправлен... > > Баги, конечно, есть везде. Но вот их количество в разных местах > различно. В больших проектах, написанных на C, помимо неизбежных для > всех языков ошибок в логике программы есть еще туча ошибок в глупостях > типа управления памятью.
И это понятно, сначала научитесь управлять памятью, потом управляйте. На самом деле в приличных проектах от эффективности управления памятью зависит всё. Если это управление от тебя не зависит, от тебя уже мало что зависит. -- Покотиленко Костик <[email protected]> -- To UNSUBSCRIBE, email to [email protected] with a subject of "unsubscribe". Trouble? Contact [email protected]

