Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум «Всё о Паскале» _ Ада и другие языки _ память

Автор: renesko1 1.07.2009 2:10

base* p_b (new base());
p_b = new dev_a();
p_b = new dev_b();

теряется ли память ?
(c++, min_gw)
допустим, в base и производных классах нет данных, в base деструктор витруальный

Добавлено через 5 мин.
Довольно глупый вопрос, но что то как заклинило wacko.gif

Автор: volvo 1.07.2009 3:05

У тебя утечка в любом случае: ты не освобождаешь p_b явным образом, компилятор этого за тебя не сделает. А если ты хочешь спросить, можно ли к одному и тому же объекту дважды применять new (точнее, можно-то можно, а вот правильно ли это) - то ответ - "Нет", это неправильно, ты теряешь память. Запусти какой-нибудь профайлер, и он тебе скажет об этом.

Автор: renesko1 1.07.2009 20:10

Спасибо.