UE5 编程规范

官方文档

使用现代C++编程标准, 使用前沿C++标准库版本.

1. 类中按照先 Public 后 Private 去写

2. 继承自 UObject 的类都以 U 前缀

3. 继承自 AActor 的类都以 A 前缀

4. 继承自 SWidget 的类都以 S 前缀

5. 模板以 T 前缀

6. 接口以 I 前缀

7. 枚举以 E 前缀

8. 布尔值以 b 前缀

9. 结构体以 F 前缀

10. Get 函数一定有返回值,内部处理异常

11. Find 函数可以没有返回值,外部处理异常

12. Typedef 以原形名为前缀

cpp 复制代码
typeof TArray<FMyType> FArrayOfMyType;

13. 宏全部大写,单词之间用 _ 分割

cpp 复制代码
#define UE_AUDIT_SPRITER_IMPORT

14. 返回 bool 类型的函数明确判断语义, 以 is, has, can 等开头

15. 以 init uninit 命名的函数, 只准在逻辑开始的时候调用

16. 以 try 开头的函数, 表示函数内逻辑不一定执行或成功

17. 带有 开始结束 语义的函数应尽量成对出现,比如 start / stop, init / uninit

18. C++ 采用大驼峰命名

19. C++ 采用大括号换行写法

相关推荐
sanqima7 分钟前
CreateThread、_beginthreadex、AfxBeginThread三种线程创建的区别与联系
c++·tls·线程创建
sanqima14 分钟前
依赖TLS和模块状态的MFC类
c++·mfc·tls·module state
All for pursuit.21 分钟前
【动态规划-11】279.完全平方数
数据结构·c++·算法·leetcode·动态规划
瑶山1 小时前
Windows + WSL2 Ubuntu + VS Code配置C++开发环境
开发语言·c++·windows·vscode·wsl
小米里的大麦1 小时前
19 C、C++ 操作 MySQL
c语言·c++·mysql
有毒的教程1 小时前
Dev-C++ 使用扩展库两种方式:DevPak一键安装 / 手动配置(重点)
android·c++·adb
纪念 2291 小时前
c++ string(二)
开发语言·c++
sanqima2 小时前
MFC里的线程本地存储(TLS)与模块状态(Module State)
c++·mfc·tls·module state
见叶之秋2 小时前
【C++】从基类到派生类:关于C++继承的务实梳理
开发语言·c++
kyle~2 小时前
C++ 智能指针:RAII、所有权与对象生命周期
开发语言·c++