博客專欄

        EEPW首頁 > 博客 > C++中的virtual的含義作用

        C++中的virtual的含義作用

        發布人:電子禪石 時間:2025-04-15 來源:工程師 發布文章

        virtual ReturnType Function_1(); //虛函數聲明

        virtual ReturnType Function_2() = 0; //純虛函數聲明


        Virtual是C++ 面向對象機制中很重要的一個關鍵字。

        只要是學過C++的人都知道在類Base中加了Virtual關鍵字的函數就是虛擬函數

        (例如函數print),于是在Base的派生類Derived中就可以通過重寫虛擬函數來實現對基類

        虛擬函數的覆蓋。當基類Base的指針point指向派生類Derived的對象時,

        對point的print函數的調用實際上是調用了Derived的print函數而不是Base的print函數。

        這是面向對象中的多態性的體現。


        純虛函數

        1, 當在基類中不能為虛函數給出一個有意義的實現時,可以將其聲明為純虛函數,

        其實現留待派生類完成。

        2, 純虛函數的作用是為派生類提供一個一致的接口,它只是個函數的聲明而已,

        它告訴編譯器,在這個類中的這個純虛函數是沒有函數定義的,該類不能創建對象

        (即不能實例化),但可以聲明指針,該類的派生類負責給出這個虛函數的重載定義。


        注意,面向對象程序設計的基本特征有:


        1,封裝性:

        封裝性是指將對象相關的信息和行為狀態捆綁成一個單元,即將對象封裝為一個具體的類。

        封裝隱藏了對象的具體實現,當要操縱

        對象時,只需調用其中的方法,而不用管方法的具體實現。

        2,繼承性:

        一個類繼承另一個類,繼承者可以獲得被繼承類的所有方法和屬性,并且可以根據實際的需要

        添加新的方法或者對被繼承類中的方法

        進行覆寫,被繼承者稱為父類或者超類,繼承者稱為子類或導出類,繼承提高了程序代碼的可

        重用性,Java中一個子類只能繼承一個

        父類,Object類是所有類的最終父類。

        3,多態性:

        多態性是指不同的對象對同一事物而做出的相同行為,一個類A可以指向其自身類和其導出類,

        一個接口可以指向其接口實現類,在方

        法參數中,使用多態可以提高參數的靈活性。

        ————————————————


                                

        原文鏈接:https://blog.csdn.net/zjuxsl/article/details/44136321


        *博客內容為網友個人發布,僅代表博主個人觀點,如有侵權請聯系工作人員刪除。



        關鍵詞: c++

        技術專區

        關閉
        主站蜘蛛池模板: 利川市| 西宁市| 新巴尔虎右旗| 鸡东县| 通化市| 洛隆县| 吉隆县| 乌拉特中旗| 丘北县| 临夏县| 吕梁市| 松原市| 延吉市| 鱼台县| 潮安县| 平江县| 马尔康县| 宕昌县| 乌什县| 个旧市| 永州市| 巴彦县| 方正县| 铜川市| 揭西县| 鄂伦春自治旗| 罗城| 孟州市| 北川| 宜都市| 红桥区| 郑州市| 汶川县| 岱山县| 固始县| 清新县| 龙川县| 隆昌县| 台江县| 伊吾县| 安多县|