new하면
메모리에 공간이 생기고 포인터가 그걸 가리키고 있는거잖아
delete 하면
구조적으로 어캐 되는거임?
그냥 포인터가 그 대상을 가리키지않고 그 메모리공간은 누가 쓰든 말든임?
A()
{
int *a=new int(5)
delete
}
main()
{
A();
}
이거 해석하면 A들어가서 스택에 포인터a라는 지역변수가 생기고 인트메모리공간이 힙에 할당되고 포인터가 a를 가리키고
딜리트 할때 a가 아무것도 가리키지않아서 인트공간은 미아가 되고 함수를 빠져나오면서 지역변수인 포인터 a가 스택에서 빠져나오면서 끝나는거임?
해당 댓글은 삭제되었습니다.
아 오케이 내가 마지막에 글로 설명한건 맞는거임?
니가 말한대로 공간이 점유되고 있는 상태를 취소하는거아님? a에 그리고 a에 그럼 무슨 값이 담기는거임?
아 오케이 이해 했다 고맙다 도움많이 됨