|
new 를 백번 했으니까 delete 도 백번 하면 되겠지요?
모두 지워 진겁니다.
그리고 XXXObj = NULL; 는 없어도 됩니다.^^
그럼...
친구들 님이 쓰신 글 :
: TList를 두개를 생성합니다...
:
: TList *a;
: TList *b;
:
: 그리고 for문을 돌면서 같은 TXXXObj 객체를 두개의 TList에 담습니다..
:
: for( int i = 0 ; i < 100 ; i++)
: {
: XXXObj = new TXXXObj;
: a->Add(TXXXObj);
: b->Add(TXXXObj);
: }
:
: 그러면 a,b라는 TList객체는
: 같은 XXXObj를 가르키는 List일껍니다...맞나요??
:
: 그뒤에 객체를 삭제한다고 할때
:
: for( int i = 0 ; i < 100 ; i++)
: {
: XXXObj = (TXXXObj *)a->Items[i];
: delete XXXObj;
: XXXObj = NULL;
: }
: delete a;
: delete b;
:
: // 위와 같이 하면 a,b에 같은 포인터로 가르키던 XXXObj는 삭제되고,
: a,b TList를 죽이므로 모두 깨끗이 지워졌다고 할수 있는건가요???
:
: 아님 b에서 또 따로 b->Delete(i); 해주고 delete해줘야 하는건가요????
|