UObject
UObject,它是所有引擎层面、游戏层面对象的基类。
UObjects 提供的功能
- 垃圾回收
- 引用更新
- 映象
- 序列化
- 默认属性变化自动更新
- 自动属性初始化
- 自动编辑器整合
- 运行时类型信息可用
- 网络复制
为利用 UObject 派生类型所提供的功能,需要在头文件上为这些类型执行一个预处理步骤,以核对需要的信息。
该预处理步骤由 UnrealHeaderTool(简称 UHT)执行。
UObject 自身
image.pngUObject Class父类中UObjectBase 提供了四个核心属性:
- InternalIndex:对象在全局表中的唯一索引
- ClassPrivate:对象的 UClass 类型
- NamePrivate:对象名,也是全局唯一
- OuterPrivate:对象所属的 Outer 对象,即对象所在的 UPackage
UObjectBaseUtility 没有额外属性,提供了一系列引擎内部使用的方法。
UObject 扩展出了一些生命周期方法,以及最重要的序列化方法 Serialize(),调用 UObject#Serialize() 即可完成对象的序列化或反序列化。
image.png
网友评论