상속 된 가상 클래스에 대해 다음 코드가 있는데 inh::P1
은 char
으로 컴파일됩니다. 컴파일러가이 예제에서 char
보다 int
에 대해 inh::P1
을 선택한 이유를 설명 해주십시오. 감사!가상 상속 멤버 찾아보기
#include <iostream>
class myClass {public: typedef int P1;};
class myClassdef : virtual public myClass {};
class myClass2 : virtual public myClass { public: typedef char P1;};
class inh : public myClassdef, public myClass2 {};
int main()
{
std::cout << sizeof(inh::P1) << std::endl;
return 0;
}