[c++] 추상 클래스의 멤버 변수와 멤버 함수
추상 클래스의 멤버 변수
추상 클래스는 정적인 데이터 멤버 변수를 가질 수 있으며, 이들은 일반적으로 파생된 클래스에서 공유됩니다. 어떤 경우에는 반드시 추상 클래스에 포함해야 하는 상수나 static 변수를 선언할 수 있습니다.
예시
class AbstractClass {
protected:
int variable; // 멤버 변수
static const int constant = 5; // 상수
};
추상 클래스의 멤버 함수
추상 클래스는 순수 가상 함수를 포함할 수 있으며, 이는 파생된 클래스에서 구현되어야 합니다. 일부 경우에는 일반적인 가상 함수도 추가할 수 있습니다.
예시
class AbstractClass {
public:
virtual void pureVirtualFunction() = 0; // 순수 가상 함수
virtual void normalVirtualFunction() { } // 가상 함수
};
이처럼, 추상 클래스는 멤버 변수와 멤버 함수를 포함하며, 파생된 클래스에서 이들을 구현하여 사용할 수 있습니다.
참고 자료:
- https://en.cppreference.com/w/cpp/language/abstract_class
- https://docs.microsoft.com/en-us/cpp/cpp/abstract-classes-cpp?view=msvc-160