Files
UnrealEngineUWP/Engine/Documentation/Source/Programming/UnrealArchitecture/Reference/ProgrammingReference.CHN.udn
Jeff Wilson 8abbc61487 Merge depot to main for publishing
[CL 3014339 by Jeff Wilson in Main branch]
2016-06-15 10:07:17 -04:00

37 lines
2.7 KiB
Plaintext

INTSourceChangelist:2823302
Availability:Public
Title:虚幻架构
Crumbs:%ROOT%, Programming
Description:创建和实现游戏性类的参考。
Version:4.9
使用 C++ 代码进行游戏性元素编程时,每个模块会包含许多 C++ 类。
[REGION:raw]
![](Programming/Basics/ProjectModuleClassOrg.png)
[/REGION]
每个类定义新 Actor 或对象的模板。类头文件中声明了类、类 [函数](Programming\UnrealArchitecture\Reference\Functions) 和类 [属性](Programming\UnrealArchitecture\Reference\Properties)。类还包含 [结构体](Programming\UnrealArchitecture\Reference\Structs) 这种有助于进行相关属性组织和操作的数据结构。结构也可被自行定义。通过 [接口](Programming\UnrealArchitecture\Reference\Interfaces) 可以使不同的类应用额外的游戏性行为。
在虚幻引擎中进行编程时,可使用标准 C++ 类、函数和变量。可使用标准 C++ 语法对它们进行定义。然而,`UCLASS()`、`UFUNCTION()` 和 `UPROPERTY()` 宏可使虚幻引擎识别新的类、函数和变量。例如,以 `UPROPERTY()` 宏作为声明序言的变量可被引擎执行垃圾回收,也可在虚幻编辑器中显示和编辑。此外还有 `UINTERFACE()` 和 `USTRUCT()` 宏,以及用于指定 [类](Programming\UnrealArchitecture\Reference\Classes\Specifiers)、[函数](Programming\UnrealArchitecture\Reference\Functions\Specifiers)、[属性](Programming\UnrealArchitecture\Reference\Properties\Specifiers)、[接口](Programming\UnrealArchitecture\Reference\Interfaces\Specifiers) 或 [结构体](Programming\UnrealArchitecture\Reference\Structs\Specifiers) 在虚幻引擎和虚幻编辑器中行为的每个宏关键词。
除以上的宏外还有一个 UPARAM() 宏,主要用于将 C++ 代码公开到蓝图。在 [](Engine/Blueprints/TechnicalGuide/ExtendingBlueprints) 文档中可查看 UPARAM() 的使用范例。
[OBJECT:TopicButtonList]
[PARAM:icon]
![](%ROOT%/prog_icon.png)(convert:false)
[/PARAM]
[PARAM:title]
游戏性编程参考目录
[/PARAM]
[PARAM:description]
[/PARAM]
[PARAM:links]
* [](Programming\UnrealArchitecture\Reference\Classes "%Programming/UnrealArchitecture/Reference/Classes:Description% ")
* [](Programming\UnrealArchitecture\Reference\Functions "%Programming/UnrealArchitecture/Reference/Functions:Description% ")
* [](Programming\UnrealArchitecture\Reference\Properties "%Programming/UnrealArchitecture/Reference/Properties:Description% ")
* [](Programming\UnrealArchitecture\Reference\Structs "%Programming/UnrealArchitecture/Reference/Structs:Description% ")
* [](Programming\UnrealArchitecture\Reference\Interfaces "%Programming/UnrealArchitecture/Reference/Interfaces:Description% ")
[/PARAM]
[/OBJECT]