protected 생성자.

·2022년 8월 29일

c++ 디자인 패턴

목록 보기
1/9

상속 시, 생성자 호출

  • 자식 생성자가 먼저 호출되고, 생성자 블록에 진입하기 전에,
    부모 생성자가 호출되고, 완료 후에 자식 생성자 블록에 진입함.

  • 자식 생성자에서 , 부모 생성자를 명시하지 않을 경우,
    컴파일러가 디폴트 부모 생성자 코드를 암묵적으로 만들고, 호출함.

  • 확인해보자 : 만약에 부모의 디폴트를 안만들어주면?

    -> 컴파일 에러 발생함.

protected 생성자

  • 만든 의도

    : 추상적인 클래스를 객체화 못하게 하기 위함.

problem

1) protected 생성자를 만들고, 파생클래스와 부모클래스를 객체화 하라.
2) 부모 객체로 업캐스팅은 가능한지, 부모 객체 포인터로 부모 클래스 동적할당이 가능한지 확인하라.

  • 1번. 업캐스팅이 불가능함.

  • ?? 잉 업캐스팅 되는데???

  • 핵심 : 2번. 자기자신을 객체화 할 수 없음.

  • 3번. 자기 자신을 동적할당할 수 없음.

profile
🔥🔥🔥

0개의 댓글