가상 소멸자클래스에 가상 함수를 정의할 때 주의할 점은 소멸자도 가상함수로 만들어야 한다는 점입니다.동적으로 생성한 파생 클래스 객체를 기본 클래스 포인터로 가리키고 있을 때 동적으로 생성한 객체를 해제하려면 기본 클래스 포인터로부터 delete 해야 합니다. delete pShape;는 pShape가 Shape 포인터이므로 Shape 클래스의 소멸자를 호출합니다.- delete pShape;는 항상 기본 클래스인 Shape 클래스의 소멸자만 호출됩니다.- pShape가 실제로는 Rectangle 클래스 객체의 주소를 저장하므로 pShape로 delete할 때 Rectangle의 소멸자가 호출되어야 합니다.- 이를 위해 Shape 클래스의 소멸자를 가상함수로 선언하면 됩니다.동적으로 생성한 파생 클래스..