C中的繼承和組合有什麼區別和相同的

2021-03-06 22:44:37 字數 1317 閱讀 8595

1樓:匿名使用者

類中的資料成員變成另外乙個類的物件的時候,就是類的組合.

也就是說用乙個類的物件作為另乙個類的成員的時候,就是類的組合

而繼承 是有許可權的

1. 公有繼承(public)

公有繼承的特點是基類的公有成員和保護成員作為派生類的成員時,它們都保持原有的狀態,而基類的私有成員仍然是私有的。

2. 私有繼承(private)

私有繼承的特點是基類的公有成員和保護成員都作為派生類的私有成員,並且不能被這個派生類的子類所訪問。

3. 保護繼承(protected)

保護繼承的特點是基類的所有公有成員和保護成員都成為派生類的保護成員,並且只能被它的派生類成員函式或友元訪問,基類的私有成員仍然是私有的。

假設a是基類,b是a的派生類,c是b的派生類

假設b公有繼承於a,c公有繼承於b,則

b可訪問a的公有,保護類成員,但不可訪問a的私有成員(所以繼承方式,派生類均不可訪問父類的私有成員,以下不再重複說明)

c可訪問a的公有,保護類成員

假設b保護繼承於a,c公有保護於b,則

b可訪問a的公有,保護類成員,

c可以訪問a的公有,保護類成員

假設b私有繼承於a,c公有保護於b,則

b可訪問a的公有,保護類成員,

c不可訪問a的所有成員

不知道這麼說你能明白嗎 謝謝!

2樓:匿名使用者

繼承 和 組合。

繼承 黑馬是馬

組合 手機和耳機。

都為實現系統功能重用,**復用的常用技巧,都是在設計模式中的基礎結構

3樓:爪抽

組合?什麼是組合 啊?

4樓:風丁慶旭

我自己總結過,書上也有:共有繼承:1

共有繼承不改變基類成員在派生類中的訪問許可權。在共有繼承下,基類的public成員,protect成員,private成員在派生類中保持它們在基類中相同的訪問許可權。2

在派生類中定義的成員函式不能直接訪問基類的私有成員,只能通過public或protect成員函式訪問。私有繼承:1

基類的private和protect都在派生類中變成了private成員,不能被派生類的外部函式訪問。2

派生類的成員函式不能訪問基類的private成員,但可以訪問基類的public和protect成員,並通過它們訪問基類private成員。

5樓:戰瑋鄂浩歌

繼承是物件導向語言的重要機制。它可以建立在一般類的基礎上。繼承和派生實際上是同一回事,但引數不同,例如:子類繼承父類,父類派生類。

繼承和贈與有什麼區別房產贈與和繼承有什麼區別

買賣過戶 繼承與贈與房子的區別在於 1 生效時間不同 繼承只有產權人過世後才能過戶,而贈與和買賣可立即過戶 2 稅費不同 繼承稅費1 4 買賣稅費1 9.6 贈與稅費,若贈與非直系親屬,與買賣一樣。如贈與直系親屬契稅3 繼承與贈與有如下不同 一 所有權轉移的條件不同。繼承要從被繼承人死亡之時開始 贈...

c 中 字首和字尾有什麼區別

許詩文 class newint newint int iniint rootint iniint newint operator newint operator int 字尾,對引數 int 不要疑惑,int沒有實質的作用,僅僅是為了區別字首方式,標誌這個 操作符是字尾形式 private int...

c 虛繼承有什麼缺點,C 中虛繼承和一般的繼承有什麼不同

不能抄說是缺點,只能說是特點。b c虛繼承a的話,那麼任何繼承b c的類都得指定如何構造其中包含的a。如果不是繼承,那麼類b c分別各自指明如何構造其中包含的a,繼承b c的類無需再指明也不能指明如何構造其中包含的a。虛繼承的話,虛基類必須由每個最後派生的類初始化 普通繼承的話,基類由這個基類直接派...