1.派生類建構函式要對本類中新增成員進行初始化,對基類繼承的成員,自動呼叫基類建構函式進行初始化。
2.當基類宣告有帶形參的建構函式時,派生類也應宣告帶形參的建構函式,並將引數傳遞給基類建構函式。引數傳遞必須放在初始化列表中。
3.當基類中宣告有預設形式的建構函式,派生類建構函式可以不向基類建構函式傳遞引數。
•重點: 1
、派生類
有參建構函式:
用初始化列表為基類傳遞引數; 2
、派生類
內部可以引用基類公有成員函式; 3
、派生類
外部,派生類物件呼叫基類公有成員函式與派生類成員函式。
1.派生類物件呼叫建構函式的順序:首先呼叫基類建構函式,呼叫順序按照它們被繼承時宣告的順序(從左向右)。然後呼叫派生類的建構函式。
2.派生類物件呼叫析構函式的順序:先呼叫派生類析構函式,然後呼叫基類析構函式。
單繼承的構造函式呼叫順序
單繼承時,派生類構造函式呼叫的一般次序如下:
(1)
呼叫基類建構函式。
(2)
呼叫內嵌成員物件的建構函式,呼叫順序取決於它們在類中定義的順序。
(3)
派生類自己的建構函式。
基類與派生類的建構函式
一 預設建構函式的呼叫關係 通過下面的例子,我們來看一下基類與派生的建構函式的呼叫順序。建立時先基類後派生類。銷毀時先派生類後基類。include include using namespace std class cbase cbase class cderive public cbase cde...
基類與派生類
初學c 的時候,很多人都很頭疼各種訪問標號下基類與派生類的關係,其實,死記硬背肯定不是乙個好的辦法,要知道它們之間的關係,先要分析一下訪問標號是如何產生的 在沒有繼承之前,類的只有兩類使用者 類本身和類的使用者。把類成員通過public和private劃分恰好體現了這一分割 類的使用者只能訪問類的p...
C 基類和派生類的建構函式
前面我們說基類的成員函式可以被繼承,可以通過派生類的物件訪問,但這僅僅指的是普通的成員函式,類的建構函式不能被繼承。建構函式不能被繼承是有道理的,因為即使繼承了,它的名字和派生類的名字也不一樣,不能成為派生類的建構函式,當然更不能成為普通的成員函式。在設計派生類時,對繼承過來的成員變數的初始化工作也...