인터페이스 관련 실습 [실습]
1. 함수는 전부 다 void로 만들고 cout 써서 간단하게 출력만 하도록 구현하여라
1.1 IAnimalAction 인터페이스 선언
- 접근 제어자 : public
- bark()
- eat()
- giveHand()
- sleep()
1.2 AnimalInfo 클래스 선언
- 접근 제어자 : public
- 멤버 변수 string name, int age, string feed
3. 원하는 동물로 클래스 만들고, 1, 2 인터페이스와 클래스를 다중 상속 받아
재정의도 하고 생성자도 만들어보고 등등 메인 함수에서 충분히 테스트해보기
※ 상속받는 자식 클래스 내에서 부모 클래스의 기본 생성자(?)를 적어 주어야 한다!
생성자 개념은 다시 공부하자 ㅠㅠ 상속 인터페이스 물론 이런 것들도 어렵게 느껴지지만, 생성자가 나에게 지금 제일 어렵게 다가온다 ...
상속과 인터페이스를 공부하셨다면, 한번 풀어보시길 바랍니다!
>> 내가 처음 풀 때
Q 생성자에 관한 질문
A 부모 클래스에 기본 생성자가 없다면 자식 생성자에서 부모 클래스를 호출을 해줘야 한다.
>> 강사님 풀이
==== 추가적으로 ====
< 강제성 컨트롤 >
인터페이스의 강제성을 컨트롤 하기 위한 클래스를 생성하였다!
구현 바디를 만들고 싶은 친구만 만들어서, 재정의 하고 싶지 않다면 그대로 사용하도록 두고 구현 바디를 만들지 않고 그대로 두면, 해당 클래스를 상속 받은 친구는 강제성을 가진 두 개의 메소드를 재정의해줘야만 객체화가 가능하다.
'C++언어 공부 > 개념 공부' 카테고리의 다른 글
2024.02.02 C++ 언어 공부 8일 차 (프렌드 추가내용) (1) | 2024.02.05 |
---|---|
2024.02.01 C++ 언어 공부 7일 차 (프렌드) (0) | 2024.02.02 |
2024.01.31 C++ 언어 공부 6일 차 (동적 바인딩, 가상 함수, 인터페이스) (0) | 2024.02.01 |
2024.01.30 C++ 언어 공부 5일 차 (상속 관련) (1) | 2024.01.30 |
2024.01.29 C++ 언어 공부 4일 차 (0) | 2024.01.29 |