04 C語言和設計模式(命令模式)

2021-09-30 11:39:23 字數 720 閱讀 5804

命令模式的目的主要是為了把命令者和執行者分開。老規矩,舉個範例吧。假設李老闆是一家公司的頭兒,他現在讓他的秘書王小姐去送一封信。王小姐當然不會自己親自把信送到目的地,她會把信交給郵局來完成整個投遞的全過程。現在,我們就對投遞者、命令、發令者分別作出定義。

首先定義post的相關資料。

[cpp]view plain

copy

typedef

struct

_post  

post;  

post完成了實際的投遞工作,那麼命令呢?

[cpp]view plain

copy

typedef

struct

_command  

command;  

void

post_exe(

struct

_command* pcommand)    

我們看到了post、command的操作,那麼剩下的就是boss的定義了。

[cpp]view plain

copy

typedef

struct

_boss  

boss;  

void

boss_call(

struct

_boss* pboss)    

C語言和設計模式

關於軟體設計方面的書很多,比如 重構 比如 設計模式 至於軟體開發方式,那就更多了,什麼極限程式設計 精益方法 敏捷方法。隨著時間的推移,很多的方法又會被重新提出來。其實,就我個人看來,不管什麼方法都離不開人。乙個人寫不出二叉樹,你怎麼讓他寫?敏捷嗎?你寫一行,我寫一行。還是迭代?寫三行,刪掉兩行,...

C語言和設計模式(工廠模式)

工廠模式是比較簡單,也是比較好用的一種方式。根本上說,工廠模式的目的就根據不同的要求輸出不同的產品。比如說吧,有乙個生產鞋子的工廠,它能生產皮鞋,也能生產膠鞋。如果用 設計,應該怎麼做呢?cpp view plain copy typedef struct shoe shoe 就像上面說的,現在有膠...

C語言和設計模式(裝飾模式)

裝飾模式是比較好玩,也比較有意義。其實就我個人看來,它和責任鏈還是蠻像的。只不過乙個是比較判斷,乙個是迭代處理。裝飾模式就是那種迭代處理的模式,關鍵在哪呢?我們可以看看資料結構。cpp view plain copy typedef struct object object 裝飾模式最經典的地方就是...