本文整理汇总了C++中Factory::Create方法的典型用法代码示例。如果您正苦于以下问题:C++ Factory::Create方法的具体用法?C++ Factory::Create怎么用?C++ Factory::Create使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Factory
的用法示例。
在下文中一共展示了Factory::Create方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: main
int main(int argc, char** argv)
{
Factory EntityFactory;
EntityFactory.Register<Object>("Object");
EntityFactory.Register<AI>("AI");
int* ptr = new int[5];
{
Object* ptr_Object;
AI* ptr_AI;
EntityFactory.Create(ptr_Object, "Object", 230);
EntityFactory.Create(ptr_AI, "AI", ptr);
std::cout << ptr_Object->GetGUID() << std::endl;
std::cout << ptr_AI->GetMe() << std::endl;
}
{
Object* ptr_Object;
AI* ptr_AI;
EntityFactory.Load(ptr_Object, "Object", 231);
EntityFactory.Load(ptr_AI, "AI", ptr);
if (!ptr_Object || !ptr_AI)
std::cout << "Ptr(s) is/are invalid." << std::endl;
std::cout << ptr_Object->GetGUID() << std::endl;
std::cout << ptr_AI->GetMe() << std::endl;
delete ptr_Object;
delete ptr_AI;
}
delete[] ptr;
return 0;
}
示例2: main
int main()
{
AMJU_CALL_STACK;
Factory<A> afactory;
afactory.RegisterFactoryFunction("a", &CreateA);
std::vector<std::string> strs = afactory.GetTypeNames();
A* pMyObject = afactory.Create("b");
pMyObject->print();
std::cout << "\n";
return 0;
}