注释与代码风格

代码是写给机器运行的,也是写给人读的——注释就是给读者的说明书。

GESP商用

◎学完你会

1试一下:加不加注释,差多少

int age = 16; // 年龄 // 判断是否成年 bool adult = age >= 18; // adult 存"是否成年" cout << (adult ? "成年" : "未成年");
两段代码都能编译。但三个月后回头,哪段能让你 3 秒看懂?注释是写给下一个读者(往往是未来的你)的。

2关键命令

写法含义例子
// 文字单行注释:到行尾为止int n; // 输入的数
/* 文字 */块注释:跨多行/* 头文件区 */
缩进(2 或 4 空格)体现"括号层级",一眼看出嵌套if(){ <缩进> }
命名变量名说清"是什么",别用 a1、tempscore、maxScore
注释和缩进不参与运行,但决定代码可维护性。竞赛里"注释不扣分、反而帮你理清思路";团队里没注释的代码等于"埋雷"。

⚠易错点

注释不能嵌套:/* 外层 /* 内层 */ 外层结束 */ ——内层的 */ 会让外层提前结束,后面的 外层结束 */ 就成语法错误了。
// 只管到行尾:它不会跨行,下一行又得重新写 //。
中文/拼音变量名是坑:变量名用英文单词(如 score),别用 score1、a、temp 这类"过一小时自己都看不懂"的名字。

?跨学科:注释就是"说明书",代码风格就是"作文的段落结构"

写注释,和给一台机器写操作说明书、给一份菜谱写步骤是一个道理:懂的人不需要,不懂的人很需要。 机器只看代码,但改代码的人要读注释——它降低的是"人读代码"的成本。

缩进和命名,相当于作文里的分段、标点、小标题:一篇没有段落的长文没人读得下去, 一段不分层、全是 a b c 的代码也一样。好的代码风格 = 好的"写作习惯"。

✎练一练

// 注释 的作用范围到哪为止?
// 是单行注释,从 // 起一直到本行行尾;换行后就恢复正常代码。
下面这行编译会怎样?/* a /* b */ c */
答案:报错。C++ 的 /* */ 不嵌套——第一个 */ 就结束块注释,后面的 c */ 变成游离代码 + 多余的 */,语法错误。