C++代码规范的核心是提升可读性、可维护性和安全性。从命名(如user_age、calculate_tax)、格式(Allman风格、4空格缩进)、头文件管理(#pragma once、层级包含)到现代特性(const、auto、范围for),每项都服务于“快速看懂、改对、不踩坑”的目标。

写C++代码,格式不是“好不好看”的问题,而是“能不能快速看懂、改对、不踩坑”的问题。规范的风格,从第一天写int main()就开始起作用。
变量和函数命名:用清楚代替缩写
别写int tmp、void f()、std::string s——这些名字在5分钟后你自己都可能懵。C++不强制命名长度,但强制你为可读性负责。
- 用
user_age代替ua,用is_valid_email代替chk_eml - 函数名动词开头:
calculate_tax()、load_config_from_file() - 类名用大驼峰:
NetworkConnection;常量全大写下划线:MAX_RETRY_COUNT
花括号和缩进:统一一种,坚持到底
C++允许K&R(左括号换行)或Allman(左括号独占一行),但项目里必须只选一种。新手推荐Allman风格——括号自成一行,逻辑块一目了然,减少因漏括号导致的隐藏bug。
- 每级缩进用4个空格(不是Tab),主流编辑器(VS Code、CLion)都能自动设置
-
if哪怕只有一行,也加花括号:if (x > 0) { do_something(); },避免后续加行时出错 - 运算符前后留空格:
int sum = a + b * 2;,别写int sum=a+b*2;
头文件与包含顺序:防重复、控依赖
头文件乱include,轻则编译慢,重则ODR(One Definition Rule)错误或隐式依赖断裂。
立即学习“C++免费学习笔记(深入)”;
- 每个.h文件顶部加include guard:
#pragma once(简单可靠,现代编译器都支持) - include顺序按层级:当前文件.h → 项目其他头文件 → 第三方库 → 标准库。例如:
#include "network_client.h" #include "utils/string_helper.h" #include#include #include
- 只include真正需要的头文件,别靠
using namespace std;偷懒——它会污染全局,尤其在头文件里绝对禁止
const、auto和范围for:少出错,多表达意图
现代C++提供了更安全、更直白的写法,不用刻意炫技,但该用就用。
- 值不改变就加
const:const std::string& name比std::string name更高效且语义清晰 - 类型明显时用
auto:auto it = vec.begin();,省去冗长迭代器类型,也避免手误写错 - 遍历容器优先用范围for:
for (const auto& item : items) { ... },比传统for+size()更安全、更简洁
基本上就这些。不需要一步到位,先盯住命名和花括号,再慢慢加上const和auto。好风格不是束缚,是让别人(和未来的你)愿意读、敢修改、不容易修坏。








