중복 서명 다음 한 코드 :가상 상속의 우리를 가정 해 봅시다
struct A{
virtual ~A(){}
void f(){
p = 42;
}
int p;
};
struct B : public virtual A{};
struct C : public virtual A{};
struct D : public B, public C, public A{}; //let's add non-virtual inheritance
int main(){
D* pA = new D();
pA->A::f(); //!
return 0;
}
은 가장 기본 클래스 A에서 42 페이지를 설정하는 방법은 없나요? 다음의 구조 pA → A :: f(); non-virtual 상속 된 클래스 A에 대해 p를 42로 설정합니다. 캐스트없이 수행 할 수 있습니까?
정확히 무엇입니까? 사실상 상속한다는 것은 A의 한 인스턴스를 얻는다는 것을 의미합니다. –