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

首頁 > 學(xué)院 > 開發(fā)設(shè)計(jì) > 正文

C++:private繼承與public繼承

2019-11-14 12:35:17
字體:
供稿:網(wǎng)友

PRivate, public, protected 訪問標(biāo)號的訪問范圍

private:只能由1.該類中的函數(shù)、2.其友元函數(shù)訪問。不能被任何其他訪問,該類的對象也不能訪問。

protected:可以被1.該類中的函數(shù)、2.子類的函數(shù)、3.其友元函數(shù)訪問。但不能被該類的對象訪問。

public:可以被1.該類中的函數(shù)、2.子類的函數(shù)、3.其友元函數(shù)訪問,也可以由4.該類的對象訪問。

注:友元函數(shù)包括3種:設(shè)為友元的普通的非成員函數(shù);設(shè)為友元的其他類的成員函數(shù);設(shè)為友元類中的所有成員函數(shù)。

2 類被繼承后方法屬性變化

private 屬性不能夠被繼承。使用private繼承, 父類的protected和public屬性在子類中變?yōu)閜rivate;使用protected繼承,父類的protected和public屬性在子類中變?yōu)閜rotected;使用public繼承, 父類的protected和public屬性不發(fā)生改變;

3 private繼承和public繼承的適用情況

C++將public繼承視為is-a關(guān)系。private繼承則并不意味著is-a關(guān)系,private繼承意味著implemented-in-terms-of(根據(jù)某物實(shí)現(xiàn)出)。private繼承意味著只有實(shí)現(xiàn)部分被繼承,接口部分被略去。private繼承在軟件設(shè)計(jì)層面上沒有意義,其意義只在于軟件實(shí)現(xiàn)層面。

private繼承:

1)編譯器不會自動將一個(gè)子類對象轉(zhuǎn)換為一個(gè)父類對象,而public繼承會;

2)子類中由父類繼承而來的成員(protected和public)都變?yōu)閜rivate。

implemented-in-terms-of也可以由復(fù)合實(shí)現(xiàn)。在應(yīng)用域,復(fù)合意味著has-a;在實(shí)現(xiàn)域,復(fù)合意味著is-implemented-in-terms-of。盡可能使用復(fù)合實(shí)現(xiàn)這種關(guān)系,必要時(shí)(涉及protected成員或virtual函數(shù)時(shí))才使用private繼承。


發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 逊克县| 潞城市| 珠海市| 交口县| 潍坊市| 西昌市| 盐亭县| 保德县| 如东县| 镶黄旗| 双柏县| 永德县| 安化县| 南川市| 黔江区| 伊宁市| 多伦县| 确山县| 简阳市| 唐海县| 沂源县| 桐柏县| 雷山县| 古交市| 浏阳市| 贵港市| 老河口市| 惠东县| 南郑县| 城步| 祁阳县| 厦门市| 石台县| 惠水县| 连城县| 庄河市| 贵南县| 兴城市| 登封市| 上林县| 新宁县|