순수 가상 함수

#1. 개념 1. 순수 가상 함수class SomeClass{public: SomeClass(); virtual ~SomeClass(); virtual void setString(const std::string& inString) = 0; virtual std::string getString() const = 0;};SomeClass class1; // 에러 발생 SomeClass* class1 = nullptr; // 컴파일 Ok!!순수 가상 함수란 "=0" 키워드를 통해 함수의 선언부만 작성하고, 자세한 구현 내용은 작성하지 않고 이를 상속하는 하위 계층의 클래스들에게 해당 함수의 구현부 작성을 강제하는 함수입니다.순수 가상 함수를 선언한 클래스는 추상 클래스라고하며, 오직 순..
[Effective C++] #34 인터페이스 상속, 구현 상속, 차이점 Scott Meyers의 "Effective C++"를 통해, C++ 구현에 필요한 개념들을 이해하고, 기록하기 위함입니다. 해당 항목은 6장 "상속, 그리고 객체 지향 설계", 항목 34 "인터페이스 상속과 구현 상속의 차이를 제대로 파악하고 구별하자"에 해당하는 내용입니다. 인터페이스 상속, 구현 상속 class Shape { public: virtual void draw() const = 0;//순수 가상 함수 virtual void error(const std::string& msg);//단순 가상 함수 int objectID() const; //비가상 함수 ... }; class Rect : public Shape{...}..
Hardii2
'순수 가상 함수' 태그의 글 목록