superkind
6/29/2018 - 6:44 AM

파괴자(Destructor)

파괴자(Destructor)

파괴자는 컴파일러가 호출하며, 일반적으로 사용자가 코드에 명시적으로 파괴자를 호출하면 안 된다.

  • 정적 기억 공간의 클래스 객체를 생성한다면, 프로그램이 종료될 때 파괴자가 자동으로 호출된다.
  • 자동기억 공가늬 클래스 객체를 생성한다면, 그 객체가 정의된 코드 블록을 프로그램이 벗어날 때 파괴자가 자동으로 호출된다.
  • new를 사용하여 객체를 생성한다면, 그 객체는 힙 메모리 또는 자유 기억 공간에 저장되므로, 메모리를 해제하기 위해 delete를 사용할 때 파괴자가 자동으로 호출된다.