동적으로 할당 된 메모리를 사용하는 경우 delete
명령의 유용성이 분명합니다. 프로그램에서 포인터의 메모리가 더 이상 필요하지 않으며 용도 변경이 가능하다는 것을 알 필요가 있습니다.스마트 포인터에서 메모리 해제
C++ 11의 스마트 포인터 (예 : unique_ptr
)는 비슷한 목적으로 사용 된 것처럼 보이는 멤버 함수를 가지고 있습니다 (release()
). 나는 똑똑한 포인터를 사용하는 것이 인데,은 수동으로 메모리의 해제를 처리해야한다고 생각했다. 이러한 맥락에서 release()
기능이 제공되는 이유는 무엇입니까?
이 범위를 벗어나거나 새로운 포인터를 할당 할 때
글쎄, C++에 다소 익숙하다. 스마트 포인터는 범위를 벗어나는 경우에만 내용을 전달하고 메모리를 해제하지 않는 응용 프로그램에서만 사용했다. – Conduit