国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > C++ > 正文

C++概念重載、覆蓋、隱藏的使用說明

2020-01-26 16:16:41
字體:
來源:轉載
供稿:網友

函數重載:

在C++程序中,可以將語義、功能相似的幾個函數用同一個名字表示,即函數重載。

重載的實現:

幾個同名的重載函數仍然是不同的函數,它們是如何區分的呢?我們自然想到函數接口的兩個要素:參數與返回值。如果同名函數的參數不同(包括類型、順序不同),那么容易區別出它們是不同的函數。

重載與覆蓋成員函數被重載的特征:

(1)相同的范圍(在同一個類中);

(2)函數名字相同;

(3)參數不同;

(4)virtual 關鍵字可有可無。

覆蓋是指派生類函數覆蓋基類函數,特征是:

(1)不同的范圍(分別位于派生類與基類);

(2)函數名字相同;

(3)參數相同;

(4)基類函數必須有virtual 關鍵字。

隱藏規則:本來僅僅區別重載與覆蓋并不算困難,但是C++的隱藏規則使問題復雜性增加了許多。這里“隱藏”是指派生類的函數屏蔽了與其同名的基類函數,規則如下:

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

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

 

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 兴和县| 临湘市| 柳河县| 洪江市| 德化县| 康保县| 关岭| 当雄县| 健康| 色达县| 太原市| 乐安县| 汪清县| 东源县| 沽源县| 大同市| 东丽区| 吴桥县| 剑阁县| 綦江县| 榆林市| 明水县| 南昌县| 云霄县| 陕西省| 堆龙德庆县| 清新县| 苗栗县| 镇巴县| 南木林县| 南充市| 盐津县| 崇州市| 海伦市| 新乡市| 景德镇市| 两当县| 女性| 霍山县| 庆元县| 大英县|