哪位知道原型模式的应用场景吗?感觉用继承类就可以解决它所遇到的有关问题了
哪位知道原型模式的应用场景吗?感觉用继承类就可以解决它所遇到的问题了
如题,请指教,谢谢~~
------解决方案--------------------
有一个基类B以及一系列派生类D1,D2……
现在有一个基类指针pB,指向任意派生类对象。现在需要把pB指针复制一份,让pB2指向另一个派生类对象,该对象的类型与pB所指向的对象类型相同。
pB --------------------> D1对象(或者D2对象)
复制
pB2--------------------> D1对象(或者D2对象)
总的来说,所谓prototype模式,就是实现继承体系下的copy。
------解决方案--------------------
如题,请指教,谢谢~~
------解决方案--------------------
有一个基类B以及一系列派生类D1,D2……
现在有一个基类指针pB,指向任意派生类对象。现在需要把pB指针复制一份,让pB2指向另一个派生类对象,该对象的类型与pB所指向的对象类型相同。
pB --------------------> D1对象(或者D2对象)
复制
pB2--------------------> D1对象(或者D2对象)
总的来说,所谓prototype模式,就是实现继承体系下的copy。
------解决方案--------------------
- C/C++ code
class Base; class D1 : public Base; class D2 : public Base; Base *pB = new D?; // 我们不知道pB到底指向那个派生类对象 Base *pB2 = pB->clone(); // clone()返回一个新对象。如果pB指向D1,那么pB2就指向新创建的D1对象;如果pB指向D2,那么pB2就指向新创建的D2对象。
------解决方案--------------------
请参阅博文 http://blog.****.net/bfzhao/archive/2010/08/09/5798608.aspx