c 賦值相容原則

2021-08-20 20:45:45 字數 689 閱讀 1268

#define _crt_secure_no_warnings

#include

using namespace std;

class parent

parent(int a)

void func1()

void func3()

int c;

int d;

static int e;

private:

int a;

};//子類也會繼承父類的靜態成員變數,這個靜態成員變數被父類和子類共同持有,父類的多個物件和子類的多個物件都可以更改這個靜態成員變數

int parent::e = 100;

class child :public parent

child(int b)

void func2()

//父類和子類有有相同的函式

//這即為函式的重定義,完全相同的函式,函式體內的流程改變即為重定義,重寫只發生在多型時,為特殊的一種重定義,但不論重寫與重定義都和過載不同,完全是兩個概念

void func3()

~child()

//父類和子類有相同的變數

int c;//子類空間會現在父類物件中建立乙個變數c,然後再在子類別的空間建立另乙個變數c

private:

int b;

};int main()

C 賦值相容原則

c 賦值相容原則 賦值相容規則是指在需要基類物件的任何地方都可以使用公有派生類的物件來替代。通過公有繼承,派生類得到了基類中除建構函式 析構函式之外的所有成員,而且所有成員的訪問控制屬性也和基類完全相同。這樣,公有派生類實際就具備了基類的所有功能,凡是基類能解決的問題,公有派生類都可以解決。賦值相容...

類的賦值相容原則

1 子類物件可以當作父類物件使用 2 子類物件可以直接賦值給父類物件 3 子類物件可以直接初始化父類物件 4 父類指標可以直接指向子類物件 5 父類引用可以直接引用子類物件 include using namespace std 1 子類物件可以當作父類物件使用 2 子類物件可以直接賦值給父類物件 ...

C C 中同名覆蓋原則和賦值相容原則

同名覆蓋原則 派生類與基類中有相同成員時 若未強行指名,則通過派生類物件使用的是派生類的同名成員 如果要通過派生類的物件訪問基類被覆蓋的同名成員,需要加 物件名.基類名 同名成員 來限定 二義性解決方法 一 用類名來限定 二 採用同名覆蓋原則 在多繼承時,基類與派生類之間,或基類之間出現同名成員時,...