潇's profile老肖的地盘PhotosBlogListsMore ![]() | Help |
|
October 21 Factory Method终于遇到一个比较熟悉的模式了,先上一段代码,根据书上类图实现的: class Product }; class ConcreteProduct : Product class Creator class ConcreteProduct : Creator 适用性: 当一个类不知道它所必须创建的对象的类的时候。 当一个类希望由它的子类来指定它所创建的对象的时候。 当类将创建对象的职责委托给多个帮组子类中的某一个,并且你希望将哪一个帮助子类是代理者这一信息局部化的时候。 自然,工厂方法还有很多其他的实现方式,比如模板: class Creator { public: virtual Product* CreateProduct() = 0; }; template <class TheProduct> class StandardCreator: public Creator { public: virtual Product* CreateProduct() { return new TheProduct; } }; TrackbacksThe trackback URL for this entry is: http://seanxiaoxiao.spaces.live.com/blog/cns!7677365E5B9342DE!638.trak Weblogs that reference this entry
|
|
|