회원이 초기화되지 않은 이유를 알 수 없습니다. 나는 이런 식으로 뭔가를 가지고 :C++ 생성자의 슈퍼 클래스 초기화 멤버
class A
{
public:
A() {member = 0;}
int getMember() {return member;}
protected:
int member;
}
및
class B : public A
{
public:
B() : A() {member = 10;}
}
나는 그것이 0 내가 여기서 무엇을 그리워 항상 B의 회원의 값을 취득하려고
?감사합니다.
수정 : Ctor is public.
@ 크리스의 코드를 확인할 수 있습니다
을 반환이 여전히를 구성 할을 'B' 객체를 만들고'member'에게'10'을 할당합니다. 그래도 그렇지 않다면 나는 깨달을 싶습니다. –
생성자는 private입니다. 그래서 새로운 B()를 가질 수 없다고 가정합니다. 나는 C++을 한동안하지 않았으므로 잘못 될 수 있습니다. –
@LewsTherin : 당신 말이 맞아요. 이것은 실제 코드가 아닌 게시 된 코드를 가리키며,이 경우 동작은 인용 된 예제에 표시되지 않은 측면에서 발생할 수 있습니다. –