질문자 :Lodle OOP 이론에 대해 확실히 이해하고 있지만 나를 많이 혼란스럽게 하는 것은 가상 소멸자입니다. 나는 소멸자가 체인의 모든 객체에 관계없이 항상 호출된다고 생각했습니다. 언제 가상으로 만들 예정이며 그 이유는 무엇입니까? 가상 소멸자는 기본 클래스에 대한 포인터를 통해 파생 클래스의 인스턴스를 잠재적으로 삭제할 수 있는 경우에 유용합니다. class Base { // some virtual methods }; class Derived : public Base { ~Derived() { // Do some important cleanup } }; virtual 선언하지 않았음을 알 수 있습니다. 이제 다음 스니펫을 살펴보겠습니다. Base *b = new Derived(); // use ..