繼承是物件導向程式設計的三大特性之一,同時也是最重要的乙個概念。繼承允許我們根據乙個已有的類來定義另乙個類。當建立乙個新類的,只需指定新建的類繼承乙個已有的類即可。這個已有的類我們成為基類(父類),新建的類我們稱為派生類(子類)。
寫法:class a:public b 對於派生類a來說,基類b的公有成員和受保護成員的訪問修飾符在a中是不變的,b的私有成員不被a所繼承
class a:protected b 對於派生類a來說,基類b的公有成員和受保護成員的訪問修飾符在a中稱為protected,基類的公有和受保護成員成為派生類的受保護成員,b的私有成員不被a所繼承
class a:private b 對於派生類a來說,基類b的公有成員和受保護成員的訪問修飾符在a中稱為private,基類的公有和受保護成員成為派生類的私有成員,b的私有成員不被a所繼承
要注意的是,乙個派生類不能繼承基類的如下成員:
1.基類的建構函式、析構函式和拷貝建構函式
2.基類的過載運算子
3.基類的友元函式
舉例:#include
usingnamespacestd;
// 基類
classshape
voidsetheight(inth)
protected:
intwidth;
intheight;
}; // 派生類
classrectangle: publicshape //public繼承,基類成員訪問修飾符不變
}; intmain(void)
C 學習 之 繼承(筆記)
繼承就像是生物裡的遺傳與變異,即派生類 子代 從基類 父代 那裡繼承基類的某些特性 遺傳 並在此基礎上擁有自己的特性 變異 c 派生語法 class base 定義乙個基類 class derived access specifier base 定義乙個派生類 其中access specifier可...
C 繼承學習筆記
派生類從基類繼承了保護 protected 成員和公有 public 成員函式,但是繼承不了基類的過載建構函式。定義乙個如下基類 class counter counter operator counter n void reset int getcount int getnum counter c...
C 學習筆記 繼承
一 c 中的繼承方式會影響子類的對外訪問屬性 public 修飾的成員變數 方法 在類的內部 類的外部都能使用 protected 修飾的成員變數方法,在類的內部使用,在繼承的子類中可用 private 修飾的成員變數方法,只能在類的內部使用 二 private成員在子類中依然存在,但是卻無法訪問到...