추상 클래스(abstract class)
- 순수 가상 메서드(pure virtaul method)가 하나라도 선언된 클래스
- 사실상 c++에서는 c#과 달리
abstract class
라는 별도의 지정 키워드 존재x
- 사실상 c++에서는 c#과 달리
- 순수 가상 메서드는 선언 뒤에
= 0
을 붙여서 표현; (구현 x)class SpreadsheetCell { public: virtaul void set(int value) = 0; virtaul std::string getString() const = 0; }
- 파생 클래스가 상속 받은 순수 가상 메서드 중 구현하지 않은게 있다면, 파생 클래스도 추상 클래스가 된다.
인터페이스(Interface)
- 순수 가상 메서드로만 선언된 클래스
- 추상 클래스에서 더욱 가상화된 형태
- 마찬가지로 파생 클래스가 상속 받은 순수 가상 메서드 중 구현하지 않은게 있으면 추상 클래스가 된다