개요 C++에서는 메모리를 프로그래머가 관리한다.* 즉, 동적 할당된 메모리를 전부 사용했다면 시스템에 돌려줘야 한다. 이 과정에서 여러가지 실수가 많이 발생하는 데 아래와 같다. * C++11부터 스마트 포인터 라이브러리가 추가되어 모던 C++에서는 명시적 해제보다는 스마트 포인터 사용을 권장하고 있다. 메모리 누수(Memory Leak) 메모리 사용이 끝났음에도 불구하고 해제하지 않은 것이다. 이중 해제(Double Free) 이미 해제가 된 메모리임에도 불구하고 또 해제하는 것이다. 이미 해제가 된 메모리를 가리키는 포인터를 댕글링 포인터(Dangling Pointer)라 한다. 섣부른 해제(Premature Free) 아직 사용이 끝나지 않았음에도 불구하고 해제하는 것이다. 이런 불편함을 해결하기..