C++ Pointer / Reference / Value / 추상 클래스(abstract class)

jaeha_lee·2022년 5월 18일
0
// Vector에 class를 넣는 경우
std::vector<Base*> v1;	// #1
std::vector<Base> v2;	// #2
// 이 2개의 차이 
// #1의 경우 Vector안의 값 각각이 해당 Derived 를 가리킨다. 즉, 모든 Base로부터 파생된 class 모두 저장 가능.
// #2의 경우 Vector안에 각각의 Derived "복사본"이 저장됨. 즉 Base임 형태는

추상 클래스

  • 순수 가상 함수가 한 개 이상 있는 클래스
  • 객체 생성 불가
  • 포인터 변수는 가능
  • 의도 : 반드시 추상 클래스의 함수를 구현해야 함.

순수 가상 함수(Pure Virtual Function)

  • 함수 구현부가 없고, 선언부 = 0으로 끝나는 가상함수

0개의 댓글