uclass 默认值 有哪些
时间: 2024-09-26 13:11:02 浏览: 35
在Unreal Engine 5 (UE5) 中,UClass 是用于描述游戏对象(Actor 或 Component)的蓝图类,它的成员变量可以有默认值。在UCLASS宏中,你可以为类的成员变量设置默认值,这些默认值通常应用于类的新实例或者从蓝图中创建的实例。常见的默认值类型包括基本数据类型、枚举、指针、引用、自定义类等。
以下是几个例子:
1. **基本类型**:
```cpp
UPROPERTY(VisibleAnywhere, Default=0) float MyFloatProp; // 默认为0
UPROPERTY(EditAnywhere, Default="Some String") FString MyStringProp; // 默认为"Some String"
```
2. **枚举**:
```cpp
UPROPERTY(VisibleAnywhere, Default=MyEnumValueA) MyEnumType MyEnumProp;
```
3. **引用或指针**:
```cpp
UPROPERTY(VisibleAnywhere, Default=nullptr) AMyActor* MyActorRef;
```
注意这里默认值通常是`nullptr`,表示未分配。
4. **自定义类或复合类型**:
```cpp
UPROPERTY(EditAnywhere, Default = ConstructObject(MyCustomClass)) MyClass* MyCustomClassInstance;
```
这里是通过构造函数创建默认实例。
对于自定义的类,如果它们有自己的默认构造函数,那么UClass默认值就是那个构造函数的结果。
阅读全文