虛繼承總結

筆試,面試中常考的C++虛擬繼承的知識點面試

第一種狀況:         第二種狀況:          第三種狀況            第四種狀況:
class a           class a              class a              class a
{              {                {                 {
    virtual void func();      virtual void func();       virtual void func();        virtual void func();
};              };                  char x;              char x;
class b:public virtual a   class b :public a           };                };
{              {                class b:public virtual a      class b:public a
    virtual void foo();        virtual void foo();     {                 {
};              };                  virtual void foo();        virtual void foo();
                               };                };spa

若是對這四種狀況分別求sizeof(a),  sizeof(b)。結果是什麼樣的呢?下面是輸出結果:(在vc6.0中運行)
第一種:4,12
第二種:4,4
第三種:8,16
第四種:8,8
繼承

相關文章
相關標籤/搜索