-
C++ 파라미터가 있는 생성자 오버라이딩 Overriding카테고리 없음 2015. 12. 6. 01:54
Super Class에서 생성자 파라미터가 있는 경우는 Derived Class에서도 같은 파라미터를 받아야 상속받은 생성자를 생성할 수가 있다.
class Officer
{
private:
std::string mName;
int mId;
public:
Officer(std::string name, int id);
virtual ~Officer();
};
class Police : public Officer
// public Gun
{
Gun *mGun;
int mAge;
public:
Police(std::string name, int id, int age);
Police::Police(std::string name, int id, int age) : Officer(name, id), mAge(age)
{
mGun = new Gun();
}
Police의 객체를 생성할 때 부모의 객체가 생성되기 때문에 기본 생성자를 호출하는 문법이다.