다음을 통해 공유


추상 클래스 (C++)

추상 클래스는 보다 구체적인 클래스가 파생될 수 있는 일반 개념의 식 역할을 합니다. 추상 클래스 형식의 개체를 만들 수는 없지만, 추상 클래스 형식에 대한 포인터와 참조를 사용할 수 있습니다.

순수 가상 함수가 하나 이상 포함된 클래스는 추상 클래스로 간주됩니다. 추상 클래스에서 파생된 클래스는 순수 가상 함수를 구현해야 합니다. 이렇게 하지 않으면 파생된 클래스도 추상 클래스가 됩니다.

가상 함수는 pure-specifier 구문을 사용하여 "순수" 함수로 선언됩니다(클래스 프로토콜 구현 참조). 가상 함수에 소개된 예제를 살펴보십시오. Account 클래스의 용도는 일반적인 기능을 제공하는 것이지만, Account 형식의 개체는 너무 일반적이어서 유용하게 사용하기가 어렵습니다. 따라서 Account는 적합한 추상 클래스 후보입니다.

// deriv_AbstractClasses.cpp
// compile with: /LD
class Account {
public:
   Account( double d );   // Constructor.
   virtual double GetBalance();   // Obtain balance.
   virtual void PrintBalance() = 0;   // Pure virtual function.
private:
    double _balance;
};

이 선언과 이전 선언의 유일한 차이점은 PrintBalance가 순수 지정자(= 0)를 사용하여 선언되었다는 것입니다.

참고 항목

참조

파생 클래스