使用浏览器的查找命令 (Crtl + f) 能够更方便查询,我尽量将每个问题的标签写全
在C++中能访问没有定义访问修饰符的成员(C++中没定义的类默认是Private结构体是Public)
给角色添加摄像机摇臂(SpringArm)时发现能够直接访问未声明访问修饰符的成员,如TargetArmLength。
遇到疑问的代码:
AMyCharacter::AMyCharacter()
{
Arm->TargetArmLength = 170.f;
}
部分源码:
class ENGINE_API USpringArmComponent : public USceneComponent
{
GENERATED_UCLASS_BODY()
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category=Camera)
float TargetArmLength;
···
}
原因就是GENERATED_UCLASS_BODY()宏。这个宏下面的成员默认为Public,这是一个不推荐使用的宏,应该使用GENERATED_BODY()替换,但是引擎源码大部分都使用的这个宏,属于遗留问题。
在函数中不带Const的引用在蓝图中默认是输出引脚
可以在参数前面添加UPARAM(ref)宏
枚举 Enum
UENUM()
<