Criação de objeto dinâmico
Este artigo explica como criar um objeto dinamicamente em tempo de execução. O procedimento usa informações de classe em tempo de execução, conforme discutido no artigo Como acessar informações da classe em tempo de execução.
Criar dinamicamente um objeto dada sua classe de tempo de execução
Use o código a seguir para criar dinamicamente um objeto usando a função
CreateObject
doCRuntimeClass
. Em caso de falha,CreateObject
retorna NULL em vez de gerar uma exceção:CRuntimeClass* pRuntimeClass = RUNTIME_CLASS(CMyClass); CObject* pObject = pRuntimeClass->CreateObject(); ASSERT(pObject->IsKindOf(RUNTIME_CLASS(CMyClass)));