根据维基百科原型模式是:原型模式是在软件开发中使用的创建设计模式,当要创建的对象类型由原型实例确定时,原型实例被克隆以产生新对象。此模式用于:
避免在客户端应用程序中使用对象创建者的子类,就像抽象工厂模式一样。
避免以标准方式(例如,使用关键字)创建新对象的内在成本,
new
因为它对于给定的应用程序来说过于昂贵。
我在 C++ 中看到了这种模式的某些演示代码,它们都使用复制构造函数。任何人都可以解释第二点是如何应用的(通常以及在 C++ 的上下文中),因为我们无论如何都在克隆函数中使用复制构造函数。如果可以在没有复制构造函数的情况下完成,那么示例代码片段会很棒。