추상클래스
자식 클래스에서 재정의를 할 것으로 기대하는 클래스.
- 하나 이상의 순수 가상함수를 포함하는 클래스
cpp
class A {
public:
virtual void foo() = 0; // 순수 가상함수
virtual int foo2(); // 가상함수
float foo3(); // 멤버함수
}
인터페이스
순수 가상함수로만 이뤄진 클래스. 멤버변수나 구현된 멤버함수가 전혀 없다.
C++ 내에는 직접적인 인터페이스가 없지만, 순수 가상함수만 가지고 인터페이스를 구현할 수 있다.
cpp
class A {
public:
virtual void foo() = 0;
virtual int foo2() = 0;
virtual float foo3() = 0
}