|
delete는 당근 메모리 해제이지요. 그리고 쓰레기값이 아니도록 포인터를 null(0)로 셋팅해야 안전(?)한 코딩 아닌가요?
이것이 널포인터라고 알고 있는데.
이렇게 했는데도 쓰레기값이 들어가있다는 말인데.. delete가 뭔지 모르는 질문인것으로 오해하신것 같습니다.
한 클래스에 여러개의 포인터가 있습니다.
AA *a;
AA *b;
...
소멸자에서 이들을 모두 delete하고 null을 셋팅하였습니다. 그리고 바로 그 밑에서 값을 찍어보면
a 는 null 이고
b 는 쓰레기값이고
이런 현상을 이해 못하는것인데요..
아니면 포인터를 null로 셋팅해도 쓰레기값(아무주소)이 남게 되어있나요? 원래?
그럼 null로 셋팅하는 이유가 뭘까요..
모두 쓰레기값이어야지 어떤 포인터는 null이고 어떤 포인터는 쓰레기값이 남아있고..
도저히 이해가 안되네요.
제발 도움을 부탁드립니다.
|