设计模式---原型(C++代码实现)
2007-11-20 09:05
507 查看
/**//************************************
***********接口类部分****************
*************************************/
//抽象类声明
class NomalActor
...{
public:
virtual NomalActor* Clone();
};
class FlyActor
...{
public:
virtual FlyActor* Clone();
};
class WaterActor
...{
public:
virtual WaterActor* Clone();
};
//具体类声明
class NomalActorA:public NomalActor
...{
public:
virtual NomalActor* Clone()...{return (NomalActor*)this; }
};
class NomalActorB:public NomalActor
...{
public:
virtual NomalActor* Clone()...{return (NomalActor*)this; }
};
class FlyActorA:public FlyActor
...{
public:
virtual FlyActor* Clone()...{return (FlyActor*)this; }
};
class FlyActorB:public FlyActor
...{
public:
virtual FlyActor* Clone()...{return (FlyActor*)this; }
};
class WaterActorA:public WaterActor
...{
public:
virtual WaterActor* Clone()...{return (WaterActor*)this; }
};
class WaterActorB:public WaterActor
...{
public:
virtual WaterActor* Clone()...{return (WaterActor*)this; }
};
/**//************************************
***********客户类部分****************
*************************************/
class GemeSystem
...{
GemeSystem();
~GemeSystem();
void Run();
};
void GemeSystem::Run(NomalActor normalactor,FlyActor flyactor, WaterActor wateractor)
...{
NomalActor normalactor1 = normalactor.Clone();
NomalActor normalactor2 = normalactor.Clone();
NomalActor normalactor3 = normalactor.Clone();
NomalActor normalactor4 = normalactor.Clone();
NomalActor normalactor5 = normalactor.Clone();
FlyActor flyactor1 = flyalactor.Clone();
FlyActor flyactor2 = flyalactor.Clone();
WaterActor wateractor1 = watoralactor.Clone();
WaterActor wateractor2 = watoralactor.Clone();
}
/**//************************************
***********主函数部分****************
*************************************/
int int main()
...{
GemeSystem gameactor1;
WaterActorA wateractor;
FlyActorB flyactor;
NormalactorA normalactor;
gameactor1.Run(normalactor,flyactor,wateractor);
return 0;
}
相关文章推荐
- 设计模式----原型模式(Prototype)UML和实现代码
- php中使用接口实现工厂设计模式的代码
- 简单了解设计模式中的装饰者模式及C++版代码实现
- 设计模式C++实现(5)——原型模式、模板方法模式
- 设计模式----观察者模式UML和实现代码(5个必须掌握的设计模式)
- [设计模式](四):建造者模式(Builder)与原型模式(Prototype)[含Kotlin深克隆实例代码]
- 设计模式(Design Pattern) - 创建型模式(Creational Pattern) - 原型模式(Prototype) - Java实现
- [设计模式]head first 设计模式之PHP实现 第一章 练习题代码
- 设计模式----模板方法模式UML和实现代码
- 设计模式:对于一种类,有可能需要在其执行前,中,后,插入一些代码,留下接口,让调用者实现
- C++之设计模式实现代码
- 设计模式----策略模式UML和实现代码(5个必须掌握的设计模式)
- 设计模式C++实现(5)——原型模式、模板方法模式
- 从“假如有以下几种价格10,20,50,请你代码实现将他们排序输出”看设计模式中的策略模式
- 游戏开发设计模式之原型模式 & unity3d JSON的使用(unity3d 示例实现)
- 设计模式PHP5实现之----原型(Prototype)
- 设计模式----单例模式UML图和代码实现(C#&JAVA)
- 常见设计模式解析和实现(C++)Prototype模式(原型模式)
- 设计模式C++实现(5)——原型模式、模板方法模式
- iOS购物车设计模式浅析及代码实现