C 多型的設計套路

2021-10-05 19:06:31 字數 1096 閱讀 7763

第一部分:正常的多型繼承

#include using namespace std;

class people

virtual void get_util_to_eat()

};class children : public people

};int main()

在基類中使用子類的方法

這是非常常見的程式設計

我們一般是抽象乙個基類 這個基類是放在中間位置的

往下是硬體的派生

往上是業務的派生

硬體/業務都是基於抽象類來操作的

就想門禁機裡面上面mqtt下面w5500/sim800c中間用乙個socket隔離的

設計思路:

a---最開始 媽媽 直接 操作 書本 這樣就是耦合度比較高的 書本換成雜誌 你就蒙蔽了

開始a#include #include using namespace std;

class book ;

};class mother;

};int main()

b--加入雜誌 媽媽 怎麼操作雜誌呢?

#include #include using namespace std;

class book ;

};class ebook ;

};class mother;

void tellstory(ebook *eb) ;

};int main()

看到我需要修改 mother 了 這樣不好!

怎麼辦?抽象

mother 操作的是乙個抽象的類 其他的書籍 雜誌什麼的 去實現抽象類 派生出去重寫

#include #include using namespace std;

class base ;

class book :public base ;

};class ebook :public base ;

};class mother;

};int main()

高層模組不依賴底層模組

高層底層都依賴其抽象層

抽象不依賴細節

細節應依賴抽象

系統設計的套路

區別就是層級不同 架構風格 設計模式 慣用法。在需求分析與軟體設計之間有乙個銜接。分為結構化設計和物件導向設計。通常,我們這些半吊子水準,一知半解的人,什麼概要設計 詳細設計張嘴就來。但事實上,這兩個概念 於結構化設計。目前來說,物件導向設計才是主流。sd和ood就好像中西醫結合一樣,二者結合著用。...

系統設計的套路

系統設計的目的 系統設計的目標 圍繞目標的核心設計 圍繞核心設計形成的設計原則 各子系統,模組的詳細設計。1 系統設計的目的 是指做這個系統設計的目的到底是什麼,很多人在做系統設計時,是搞不清為什麼要做乙個新系統的設計,或者為什麼要做乙個系統的重構 演進的設計,如果搞不清楚這個目的,後面的系統設計上...

設計套路 Mysql主鍵的選擇

建表在日常開發中必不可少,但設計出來的表卻千差萬別,前期表單設計得不好,對後期維護和優化都會產生非常大的阻力,那麼我們需要如何優雅地建立我們的主鍵呢?下面我們慢慢道來 mysql是由b 樹構成,搞清楚下面兩個問題,就知道為什麼用b 樹了。1.b tree是為磁碟或者其他直接訪問輔助裝置而設計的一種平...