추상 기본 클래스에 멤버 변수 만 있지만 (멤버 메서드가없는) 클래스 상속 구조를 설정해야합니다. 멤버 메소드는 파생 클래스에 의해 정의됩니다. 따라서, 내가 필요로하는 것은이 게시물 수 있습니다 :protected constructor 대 순수 가상 소멸자
- 은 소멸자가 순수 가상 확인 :이 상위 2 답변에서 Making a class abstract without any pure virtual methods
, 나는 그것을 달성의 2 가지 방법이 있습니다 깨달았다.
- 생성자를 보호하십시오.
두 방법의 차이점을 알고 싶습니다. 다른 시나리오보다 선호해야하는 시나리오가 있습니까 (아니면 작동하지 않는 특수한 상황 일 수도 있습니다). 나는 그것에 대해 생각하고 아무것도 생각할 수 없었다.
내가 뭔가를 함께 넣어하려고 여기에 몇 가지 게시물 (Is there a use for making a protected destructor virtual?, C++: Protected Class Constructor, Should an abstract class' destructor be pure virtual?)에 대한 답변을 통해 검색,하지만 난 결론에 도달 할 수 없었다.
이것은 OP의 질문에 * 정말로 * 답하지 않습니다. 비 순수 가상 소멸자는 보호 된 생성자 사례와 함께 사용할 수 있으며 예제 코드는 정의 된 동작을 나타냅니다. 관련이 있지만 직각 이슈에 대해 이야기하고 있습니다. –