C 基於多型實現依賴顛倒原則附原始碼

2021-10-24 12:54:15 字數 1186 閱讀 1053

關於多型的實現原理以及例項見前幾天更新的c++多型一文:

c++多型

使用依賴顛倒原則之後,雖然**實現比原來更加複雜了,但是實現了高層業務邏輯層與底層模組之間的解耦合,更改或者更換底層模組不在需要改動高層模組的**就可以實現,整個系統的更加的穩定。

傳統的過程式設計傾向於使用高層的模組依賴低層次的模組,抽象層依賴於具體層

沒有使用依賴顛倒之前,上層業務邏輯依賴底層業務邏輯

依賴顛倒原則

使用了依賴顛倒之後,上層業務邏輯和底層模組都依賴於抽象層,**複雜了,但是系統易於維護了

依賴顛倒的實現也是基於多型的基礎之上,,具體的cpp**實現如下:

#include

using namespace std;

// 讓computer框架和具體的廠商 進行解耦合

// 1. 定義虛類,主要目的是為了規定後期子類的行為

class harddisk

;class memory

;class cpu

;class computer

void

work()

private:

harddisk *m_harddisk;

memory *m_memory;

cpu *m_cpu;};

class intercpu : public cpu};

class xsdisk : public harddisk};

class kingstonmemory : public memory};

intmain

(int argc,

char

const

*ar**)

執行結果:

xs data work status ok.

kingston memory status is ok.

inter cpu work status ok.

hello world.

C 實現多型

多型 就是指不同物件收到相同訊息是,會產生不同行為,同乙個類在不同的場合下表現出不同的行為特徵 多型的作用 把不同的子類物件都當做父類來看,可以遮蔽不同子類物件之間的差異,寫出通用的 做出通用的程式設計,以適應需求的不斷變化。實現多型有三種形式 虛方法抽象類介面 下面,使用虛方法,簡單實現多型效果 ...

C 多型實現

多型 多型的含義為 乙個事物的多種形態,在c 程式設計張,多型性是指具有不同功能的函式可以用同乙個函式名,這樣就可以用乙個函式名呼叫不同內容的函式。一般多型分為兩種 1 靜態多型 也成為編譯多型,主要包括引數多型,過載多型和強制多型。引數多型 採用引數化模板,通過給出不同的型別引數,使的乙個結構有多...

C 中基於繼承的多型是如何實現的。

今日簡單地學了下基於繼承的多型,大致內容如圖所示。首先,要知道如何重寫父類方法。重寫父類方法就是修改它的實現,或者就是在子類中對繼承的父類方法重新編寫。在父類中用 virtual 關鍵字宣告的方法 俗稱虛擬方法 在子類中可以重寫。public virtual void dispaly 性別 年齡 t...