日韩久久久精品,亚洲精品久久久久久久久久久,亚洲欧美一区二区三区国产精品 ,一区二区福利

函數重載 覆蓋 隱藏

系統 1779 0

重載overload

函數名相同,但形參的個數或形參的類型不同。

僅返回值不同,不能定義為重載函數。

      class Base {

public:

	
      
        void
      
       baseFun(
      
        int
      
      ) { cout << "
      
        baseFun(int) in Base
      
      " << endl; }

	
      
        void
      
       baseFun(
      
        double
      
      ) { cout << "
      
        baseFun(float) in Base
      
      " << endl; }

};


    

?

覆蓋Override

派生類對基類virtual函數的重寫(原型一樣)。

      class Base {

public:

	virtual 
      
        void
      
       baseVirtualFun(
      
        int
      
      ) { cout << "
      
        baseVirtualFun(float) in Base
      
      " << endl; }

};



class Derived: public Base {

public:

	virtual 
      
        void
      
       baseVirtualFun(
      
        int
      
      ) { cout << "
      
        baseFun(float) in Derived
      
      " << endl; }

};


    

?

隱藏(另一個新的函數)

兩種情況:

1) 如果派生類的函數與基類的函數同名,但是參數不同。此時,不論有無virtual關鍵字,基類的函數將被隱藏(注意別與重載混淆)。

2) 如果派生類的函數與基類的函數同名,并且參數也相同,但是基類函數沒有virtual關鍵字。此時,基類的函數被隱藏(注意別與覆蓋混淆)。

      class Base {

public:

	virtual 
      
        void
      
       baseVirtualFun(
      
        int
      
      ) { cout << "
      
        baseVirtualFun(float) in Base
      
      " << endl; }

};



class Derived: public Base

{

public:

	virtual 
      
        void
      
       baseVirtualFun(
      
        float
      
      ) { cout << "
      
        baseFun(float) in Derived
      
      " << endl; }

};


    

?

?

總結:重載是同一作用域,覆蓋是派生類對基類virtual方法的重寫,隱藏是兩個類之間(可用using 引用)。

函數重載 覆蓋 隱藏


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 望都县| 永州市| 旅游| 科技| 岳西县| 双鸭山市| 化州市| 桐柏县| 海门市| 瓦房店市| 和平县| 郑州市| 永康市| 蛟河市| 广州市| 青河县| 广丰县| 金堂县| 阿克| 龙江县| 怀化市| 云浮市| 灵台县| 扬中市| 如东县| 祁门县| 临泉县| 湖南省| 微山县| 中方县| 石首市| 高淳县| 海门市| 清原| 亚东县| 河源市| 金寨县| 遵义市| 隆子县| 雷州市| 怀宁县|