Re[2]: Память не освобождается.
От: needle  
Дата: 16.05.05 09:10
Оценка:
Здравствуйте, CrystaX, Вы писали:

CX>Здравствуйте, needle, Вы писали:


CX>
N>>#include <stdio.h>

N>>struct cs {
N>>   cs *next;
N>>   char *buffer ;
N>>   cs () {  buffer = new char [1024];  }
N>>   ~cs() { delete [] buffer; }
N>>};

N>>int main(){
N>>cs *a,*first;
N>>getchar();
N>>for (int i=0; i<5000; i++) {
N>>if (i==0) first=new cs;
N>>else { a = new cs; a->next = first; first = a; }
N>>} 
N>>getchar();
N>>while (a) {
N>>first = a->next;
N>>delete a;
N>>a = first;
N>>} 
N>>getchar();
N>>return 0;
N>>}
CX>


N>>по идее ведь второй цикл должен освободить все что занял первый, в чем дело?


результат тот же
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.