Creates a new instance of the class associated with the class describing instance using the pseudo-constructor of the class.
Returns a smart pointer to the newly created instance.
Functionality of Pseudo-Constructors
Understanding Pseudo-Constructors