对象创建与资源获取
一、对象与销毁
1. 纯C++类的创建与销毁
创建: 对于纯C++类(这里指非继承自UObject的类,一般以F开头),可以通过new来创建对象,并使用TSharedPtr和TSharedRef来管理对象。
TSharedPtr<MyClass> MyClassPtr = MakeShareable(new MyClass());
销毁: 使用智能指针的计数器方法,自动销毁
2. UObject及其子类创建与销毁
创建: 继承自UObject但不继承自Actor的类可以通过NewObject来创建对象,并由UE4引擎来管理对象
UObjectClass* MyClass = NewObject<UObjectClass>();
销毁: 垃圾回收机制自动回收
3. AActor及其子类的创建与销毁
创建: 继承自AActor的类,使用SpawnActor来创建对象,SpawnActor有七个重载函数
AActorClass* MyClass = GetWorld()->SpawnActor<AActorClass>(NewLocation, NewRotation);
销毁