-
카테고리
-
세부 분야
프로그래밍 언어
-
해결 여부
미해결
[10:25] AutoPtr 포인터의 메모리 위치 질문
24.05.24 17:05 작성 24.05.24 17:09 수정 조회수 63
1
AutoPtr을 사용 시, 함수?가 끝나게 되면 자동으로 delete를 해주는 것은 이해했습니다. 그렇다면 res1이라는 포인터는 스택 메모리에 저장이 되어 있다고 생각하면 될까요?
답변을 작성해보세요.
2
Soobak
2024.05.25
안녕하세요? 질문&답변 도우미 Soobak 입니다.
네, 맞습니다.
res1
이라는 포인터 자체는 스택 메모리에 저장됩니다.
좀 더 구체적으로 설명드리자면,
AutoPtr<Resource> res1(new Resource);
라는 코드를 통해 생성된res1
은AutoPtr<Resource>
타입의 객체입니다.이 객체는 지역 변수로 선언되었으므로 스택 메모리에 저장됩니다.
res1
객체 내부의 멤버 변수인m_ptr
은 힙 메모리에 동적으로 할당된Resource
객체를 가리키는 포인터입니다.
res1
자체는 스택 메모리에 존재합니다.
답변 1