개발자 99% 커뮤니티에서 수다 떨어요!
연습문제 17. 일부 c나 c++ 개발자들은 어떤 포인터가 가리키는 메모리를 해제한 다음에는 반드시 그 포인터 값을 NULL로 설정한다. 왜 이것이 좋은 생각일까?
포인터에 메모리를 해제하여도 포인터에는 주소값이 남아있으며 해당포인터를 사용하면 잘못 참조될 수도 있기에 항상 해제 후 NULL로 초기화시킴
ex) Human *pHuman = new Human;
if (!pHuman)
{
cout << "할당 실패" <<endl;
return false;
}
delete pHuman;
pHuman 잘못된 값이 남아있음