C++中overload,override,overwrite的區(qū)別詳細(xì)解析
更新時間:2013年09月13日 10:43:51 作者:
以下是對C++中overload,override,overwrite的區(qū)別進(jìn)行了詳細(xì)的分析介紹,需要的朋友可以過來參考下
Overload(重載):在C++程序中,可以將語義、功能相似的幾個函數(shù)用同一個名字表示,但參數(shù)或返回值不同(包括類型、順序不同),即函數(shù)重載。
(1)相同的范圍(在同一個類中);
(2)函數(shù)名字相同;
(3)參數(shù)不同;
(4)virtual 關(guān)鍵字可有可無。
Override(覆蓋):是指派生類函數(shù)覆蓋基類函數(shù),特征是:
(1)不同的范圍(分別位于派生類與基類);
(2)函數(shù)名字相同;
(3)參數(shù)相同;
(4)基類函數(shù)必須有virtual 關(guān)鍵字。
Overwrite(重寫):是指派生類的函數(shù)屏蔽了與其同名的基類函數(shù),規(guī)則如下:
(1)如果派生類的函數(shù)與基類的函數(shù)同名,但是參數(shù)不同。此時,不論有無virtual關(guān)鍵字,基類的函數(shù)將被隱藏(注意別與重載混淆)。
(2)如果派生類的函數(shù)與基類的函數(shù)同名,并且參數(shù)也相同,但是基類函數(shù)沒有virtual關(guān)鍵字。此時,基類的函數(shù)被隱藏(注意別與覆蓋混淆)。
相關(guān)文章
深入淺出分析C++ string底層原理
C ++的string對象實質(zhì)上就是一個容器,其內(nèi)部有一個c_str方法能夠返回一個指向的實質(zhì)存儲字符串副本的數(shù)據(jù)成員。即通過string::c_str()配合printf函數(shù)可以獲取的字符串副本的內(nèi)存地址
2021-11-11
淺談QT內(nèi)存泄漏
本文主要介紹了淺談QT內(nèi)存泄漏,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
2021-09-09
C語言在屏幕上輸出楊輝三角
這篇文章主要介紹了在屏幕上輸出楊輝三角的方法,具有一定的參考借鑒價值,需要的朋友可以參考下
2015-10-10
C++利用SQLite實現(xiàn)命令行工具
這篇文章主要為大家詳細(xì)介紹了一個基于 C++、SQLite 和 Boost 庫的簡單交互式數(shù)據(jù)庫操作 Shell,該 Shell 允許用戶通過命令行輸入執(zhí)行各種數(shù)據(jù)庫操作,感興趣的可以了解下
2023-11-11
C++交換指針實例
這篇文章主要介紹了C++交換指針實例,針對C與C++交換指針的方法進(jìn)行了較為詳細(xì)的對比分析,非常具有實用價值,需要的朋友可以參考下
2014-10-10
OpenCV相機標(biāo)定的全過程記錄
這篇文章主要給大家介紹了關(guān)于OpenCV相機標(biāo)定的相關(guān)資料,文中通過實例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
2022-03-03
c++實現(xiàn)堆排序的示例代碼
本文主要介紹了c++實現(xiàn)堆排序的示例代碼,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
2023-02-02
C語言深入探究函數(shù)的溯源
函數(shù)是一組一起執(zhí)行一個任務(wù)的語句。每個 C 程序都至少有一個函數(shù),即主函數(shù) main() ,所有簡單的程序都可以定義其他額外的函數(shù)
2022-04-04