摘要:
### 概述 - 接口类有助于确保一组(可能)不相关的类实现一组通用函数 ### 接口声明 - 声明接口类与声明普通的虚幻类相似,但仍有两个主要区别 - 首先,接口类使用`UINTERFACE`宏而不是`UCLASS`宏,且直接从`UInterface`而不是`UObject`继承 - 其次,`UI 阅读全文
摘要:
### 概念 - `TSet`是一种快速容器类,用于在排序不重要的情况下存储唯一元素 - `TSet` 也是值类型,支持常规复制、赋值和析构函数操作,以及其元素较强的所有权 - `TSet` 被销毁时,其元素也将被销毁。键类型也必须是值类型 ### 创建 ``` TSet FruitSet; ``` 阅读全文
摘要:
### 概述 - 映射的元素类型为键值对,元素类型实际上是 `TPair`,只将键用于存储和获取 - `TMap` 和 `TMultiMap` 两者之间的不同点是`TMap`中的键是唯一的,而`TMultiMap`可存储多个相同的键 - `TMap`是散列容器,这意味着键类型必须支持`GetType 阅读全文
摘要:
### 概述 - TArray 是UE4中最常用的容器类。其速度快、内存消耗小、安全性高 - TArray 类型由两大属性定义:元素类型和可选分配器 - 元素类型是存储在数组中的对象类型。TArray 被称为同质容器。换言之,其所有元素均完全为相同类型。单个 TArray 中不能存储不同类型的元素。 阅读全文
摘要:
### 属性声明 ``` UPROPERTY([specifier, specifier, ...], [meta(key=value, key=value, ...)]) Type VariableName; ``` ### 属性说明符 - 声明属性时,属性说明符 可被添加到声明,以控制属性与引擎 阅读全文
摘要:
### 概念 - 定时器在全局定时器管理器(`FTimerManager`类型)中管理。 - 全局定时器管理器存在于 **游戏实例** 对象上以及每个**场景**中。 - 有两个函数可以使用定时器管理器来设置定时器:`SetTimer`和`SetTimerForNextTick`,它们各自都有一些重 阅读全文
摘要:
# Lambda表达式 - Lambda 表达式是现代 C++ 中最重要的特性之一,而 Lambda 表达式,实际上就是提供了一个类似匿名函数的特性, 而匿名函数则是在需要一个函数,但是又不想费力去命名一个函数的情况下去使用的。这样的场景其实有很多很多, 所以匿名函数几乎是现代编程语言的标配。 ## 阅读全文
摘要:
## 一、右值引用 ### 1. 右值、左值 - C++ 中表达式分为左值和右值,简单而言,有内存地址的表达式就是左值,它可以出现在赋值语句的左边或者右边。无法取内存地址的表达式是右值,只能出现在赋值语句的右边。 - 左值 (lvalue, left value),顾名思义就是赋值符号左边的值。准确 阅读全文
摘要:
## 记录使用UE引擎时的一些bug解决方法 ### 1. bug: rider无法启动UE源码版项目 ![](https://img2023.cnblogs.com/blog/1989818/202305/1989818-20230512134555350-1206944349.png) - ## 阅读全文