真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

C++多繼承多態(tài)的實(shí)例詳解-創(chuàng)新互聯(lián)

C++多繼承多態(tài)的實(shí)現(xiàn)

創(chuàng)新互聯(lián)公司,專(zhuān)注為中小企業(yè)提供官網(wǎng)建設(shè)、營(yíng)銷(xiāo)型網(wǎng)站制作、響應(yīng)式網(wǎng)站設(shè)計(jì)、展示型網(wǎng)站設(shè)計(jì)、網(wǎng)站制作等服務(wù),幫助中小企業(yè)通過(guò)網(wǎng)站體現(xiàn)價(jià)值、有效益。幫助企業(yè)快速建站、解決網(wǎng)站建設(shè)與網(wǎng)站營(yíng)銷(xiāo)推廣問(wèn)題。

如果一個(gè)類(lèi)中存在虛函數(shù),在聲明類(lèi)的對(duì)象時(shí),編譯器就會(huì)給該對(duì)象生成一個(gè)虛函數(shù)指針,該虛函數(shù)指針指向該類(lèi)對(duì)應(yīng)的虛函數(shù)表。

多態(tài)的實(shí)現(xiàn)是因?yàn)槭褂昧艘环N動(dòng)態(tài)綁定的機(jī)制,在編譯期間不確定調(diào)用函數(shù)的地址,在調(diào)用虛函數(shù)的時(shí)候,去查詢(xún)虛函數(shù)指針?biāo)赶虻奶摵瘮?shù)表。

派生類(lèi)生成的對(duì)象中的虛函數(shù)指針指向的是派生類(lèi)的虛函數(shù)表,因此無(wú)論是基類(lèi)還是派生來(lái)調(diào)用,都是查詢(xún)的是派生類(lèi)的表,調(diào)用的是派生類(lèi)的函數(shù)。

如果發(fā)生了多繼承,多個(gè)基類(lèi)中都有虛函數(shù),那么該是怎樣的呢?虛函數(shù)指針如何排列,多個(gè)基類(lèi)的指針為什么能夠同時(shí)指向派生類(lèi)對(duì)象,同時(shí)發(fā)生多態(tài)?

請(qǐng)看下面這段程序

#include 
#include 
using namespace std;

class Base1{

  public:
  void fun()
  {
    printf("this is Base1 fun\n");
  }
  virtual void fun1()
  {
    printf("this is Base1 fun1\n");
  }
};

class Base2{
  public:
  void fun()
  {
    printf("this is Base2 fun\n");
  }
  virtual void fun2()
  {
    printf("this is Base2 fun1\n");
  }
};

class Derived : public Base1,public Base2{
  public:
  void fun()
  {
    printf("this is Derived fun\n");
  }
  void fun1()
  {
    printf("this is Derived fun1\n");
  }
  void fun2()
  {
    printf("this is Derived fun2\n");
  }
};

int main()
{
  Derived *pd = new Derived();
  Base1 *p1 = (Base1 *)pd;
  Base2 *p2 = (Base2 *)pd;
  p1->fun();
  p2->fun();
  p1->fun1();
  p2->fun2();
  printf("Base1 p1:%x\n", p1);
  printf("Base2 p2:%x\n", p2);
  return 0;
}

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)建站www.cdcxhl.com,海內(nèi)外云服務(wù)器15元起步,三天無(wú)理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性?xún)r(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專(zhuān)為企業(yè)上云打造定制,能夠滿(mǎn)足用戶(hù)豐富、多元化的應(yīng)用場(chǎng)景需求。


網(wǎng)站名稱(chēng):C++多繼承多態(tài)的實(shí)例詳解-創(chuàng)新互聯(lián)
標(biāo)題鏈接:http://weahome.cn/article/dghhpc.html

其他資訊

在線咨詢(xún)

微信咨詢(xún)

電話(huà)咨詢(xún)

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部