《設計模式》學習筆記 裝飾模式

2021-08-30 06:15:23 字數 842 閱讀 1909

裝飾模式(decorator pattern)指的是在不必改變原類檔案和使用繼承的情況下,動態地擴充套件乙個物件的功能.它是通過建立乙個包裝物件,也就是裝飾來包裹真實的物件。

#pragma once

#include#includeclass car

;class runcar:public car

private:

protected:

};// 裝飾類

class swimcardecorator:public car

~swimcardecorator()

virtual void show(void)

private:

car * m_car;

void swim(void)

protected:

};// 裝飾類

class flaycardecorator :public car

~flaycardecorator()

virtual void show(void)

private:

car * m_car;

void flay(void)

protected:

};class decoratorpattern

; ~decoratorpattern() {};

};

#include "decoratorpattern.h"
#include#include"decoratorpattern.h"

int main(void)

設計模式學習筆記之裝飾模式

裝飾模式 包裝器 動態地給物件新增一些額外的職責。即動態擴充套件乙個物件的功能,而不需要改變原始類 具體元件 類和 具體裝飾 類是該模式最重要的兩個角色 抽象元件 author zhenyonghe eg.假設系統中有乙個bird抽象類以及bird類的乙個子類 sparrow。sparrow類實現了...

設計模式學習筆記 裝飾器模式

比如人的行為類,剛剛開始的時候,就能上得了廳堂,下得了廚房。但隨著年歲的增長,每個人歷經了世事,變得不僅是上得了廳堂,下得了廚房。有些人能鬥得過流氓,有些人修得了電腦。那麼如果用 表示這些增加了特殊行為的人。inte ce iperson class person implements iperso...

設計模式學習筆記(三 裝飾模式)

在許多設計中,可能需要改進類的某個物件的功能,而不是該類建立的全部物件,在這樣的情況下,就可以使用裝飾模式。例如,麻雀類的例項 麻雀 能夠連續飛行100公尺,如果用麻雀類建立了5只麻雀,那麼這5只麻雀都能連續飛行100公尺。假如想讓其中乙隻麻雀能夠連續飛行150公尺,那應當怎樣做呢?一種比較好的辦法...