设计模式(6)-装饰器(认识程序中的装饰器)
之前已经看过装饰器模式,但是感觉不是很清晰,但是有一种情况下出的代码,一定是装饰器。
Widget* aWidget = new BorderDecorator(
new BorderDecorator(
new ScrollDecorator(
new TextField( 80, 24 ))));
可以看到,层层嵌套,每个类都可以按照一定的顺序嵌套多次。
比如将顺序改为如下:
http://cyqdata.cn/cnblogs/article-detail-36414