Есть класс
class aaa{}
есть другой класс
class bbb
{
aaa* pointer;
}
У которого деструктор такого вида
bbb::~bbb()
{
if (pointer)
{
delete pointer;
pointer=0;
}
}
Создаю коллекцию в третьем классе
class ccc
{
CList<bbb, bbb&> list;
}
ну и в деструкторе пишу
ссс::~ccc()
{
while (list.GetCount()>0 ) // пробовал IsEmpty
{
list.RemoveHead();
}
}
так вот при вызове деструктора все ломается ( ASSERT гдето в heap)
но если убрать строчки
while (list.GetCount()>0 ) // пробовал IsEmpty
{
list.RemoveHead();
}
то все как бы работает.
Чувствую что что-то не так я делаю.
И другой вопрос (тоже по теме)
как проверить есть ли утечка памяти в моей программе ( может утилита какая ).
И что бы попроще (т.е. без переопределений операторов new и delete )