CObject Class: Dynamic Object Creation
This article explains how to create an object dynamically at run time. The procedure uses run-time class information, as discussed in the article CObject Class: Accessing Run-Time Class Information.
To dynamically create an object given its run-time class
Use the following code to dynamically create an object by using the CreateObject function of the CRuntimeClass. Note that on failure, CreateObject returns NULL instead of raising an exception:
CRuntimeClass* pRuntimeClass = RUNTIME_CLASS( CMyClass ); CObject* pObject = pRuntimeClass->CreateObject(); ASSERT( pObject->IsKindOf( RUNTIME_CLASS( CMyClass ) ) );