Prototype Design Pattern is a Creational Design Pattern that helps in the prototyping(creating/copying cheaply) of an object using separate methods or polymorphic classes. In this article, we’re going to take a look at why we need a Prototype Design pattern in C++. The prototype provides flexibility to create complex object cheaply. The existing object then acts as a prototype & newly copied object may change the same properties only if required. This approach saves costly resources and time, especially when the object creation is a heavy process.