C++基础知识点

以下是一些 Unreal Engine 5(UE5)中 C++ 的基础知识点

一、类和对象

  1. 定义类:
   UCLASS()
   class AMyActor : public AActor
   {
       GENERATED_BODY()
   public:
       AMyActor();
   };

使用UCLASS宏来标记一个类可以被 Unreal 引擎反射系统识别。

  1. 创建对象:
   AMyActor* MyObject = GetWorld()->SpawnActor<AMyActor>();

二、属性声明

  1. 声明变量:
   UPROPERTY(VisibleAnywhere, BlueprintReadOnly, Category = "MyCategory")
   int MyInteger;

UPROPERTY宏用于声明属性,可以设置属性的可见性、在蓝图中的读写权限等。

  1. 初始化属性:
   AMyActor::AMyActor()
   {
       MyInteger = 10;
   }

三、函数定义

  1. 成员函数:
   UFUNCTION()
   void MyFunction();

UFUNCTION宏标记函数可以被引擎反射系统识别。

  1. 函数实现:
   void AMyActor::MyFunction()
   {
       // 函数体
   }

四、构造函数和析构函数

  1. 构造函数:
   AMyActor::AMyActor()
   {
       // 初始化代码
   }

  1. 析构函数:
   AMyActor::~AMyActor()
   {
       // 清理代码
   }

五、访问修饰符

  1. public:可以在任何地方访问。
  2. protected:可以在类内部和子类中访问。
  3. private:只能在类内部访问。

六、模板类

可以使用模板类来实现通用的功能。例如:

template<typename T>
class MyTemplateClass
{
public:
    T MyValue;
};

七、智能指针

UE5 中广泛使用智能指针来管理内存。例如:

TSharedPtr<MyClass> MySmartPointer = MakeShareable(new MyClass());

八、宏和预处理器指令

  1. #define:定义常量或宏。
  2. #include:包含头文件。
  3. #ifdef#endif:条件编译。

九、枚举类型

UENUM()
enum class EMyEnum : uint8
{
    Value1 UMETA(DisplayName = "Value 1"),
    Value2 UMETA(DisplayName = "Value 2")
};

可以使用枚举类型来定义一组相关的常量值。

十、命名空间

可以使用命名空间来组织代码。例如:

namespace MyNamespace
{
    class MyClass
    {
    public:
        //...
    };
}

这些是 UE5 C++ 开发的一些基础知识点,随着开发的深入,还会涉及到更多复杂的概念和技术。

  • 5
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值