< 클래스의 상속 >
class 자식 : public 부모 {...};
이렇게 부모 클래스를 상속 받은 자식 클래스를 만들 수 있습니다.
상속을 하게 되면 public과 protected 상태의 맴버변수와 메소드를 이어 받습니다.
예제에서 학생 클래스는 메소드 걷기, 먹기, 상속를 적지 않아도
부모 클래스인 사람 클래스의 것을 그대로 상속 받아 사용할 수 있습니다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 | #include <iostream> using namespace std; class 사람 { public: void 걷기() { } void 먹기() { } protected: void 상속() { } private: int 몸무게; int 키; void 다이어트() { } }; class 학생 : public 사람 { public: void 공부() { } void 취미생활() { } }; int main() { 사람 세한; 세한.걷기(); 세한.먹기(); 학생 다연; 다연.공부(); return 0; } | cs |
< 상속한 method가 사용하는 변수는? >
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 | #include <iostream> using namespace std; class Parent { private: int 몸무게 = 10; int 키 = 20; public: int set() { cout << "부모의 몸무게 : " << 몸무게 << endl; cout << "부모의 키 : " << 키 << endl; return 1; } }; class Child : public Parent { private: int 몸무게 = 20; int 키 = 10; }; int main() { Child c; c.set(); return 0; } | cs |
Child class는 Parent class를 상속해서 몸무게, 키, set을 사용할 수 있습니다.
그래서 Child class의 객체 c가 Parent의 set을 사용하면 다음과 같습니다.
Child class의 몸무게 20, 키 10을 무시하고
Parent class의 몸무게 10, 키 20을 사용해 set을 출력합니다.
'프로그래밍 > C++' 카테고리의 다른 글
C++ 문법 - 소멸자 (0) | 2018.01.22 |
---|---|
C++ 문법 - 생성자 (0) | 2018.01.22 |
C++ 기초 문법 - 클래스의 접근상태 (0) | 2018.01.15 |
C++ 기초 문법 - 클래스 (0) | 2018.01.14 |
C++ 기초 문법 - 함수 (0) | 2018.01.14 |