프로그래밍/Effective c++

34. 인터페이스 상속과 구현 상속의 차이를 제대로 파악하고 구별하자.

CuriousBear 2016. 3. 10. 16:40

  1. 순수 가상함수를 선언한 클래스의 상속을 인터페이스 상속이라 하며, 파생 클래스에게 함수의 인터페이스만을 물려주려는 것이다. 이때 파생클래스는 이 함수를 반드시 정의 해야한다.
  2. 단순 가상함수의 목적은 파생클래스가 함수의 인터페이스 뿐만 아니라 구현까지 물려받을 수도 있게 하기 위함이다. 이때 물려받은 구현은 재정의도 가능하다. 이를 구현 상속이라 한다.
  3. 비가상 함수의 선언 목적은 클래스가 함수의 인터페이스및 필수적인 구현반드시 물려받게 하기 위함이다.