我的c++编码规范

一、命名规范

  1. 变量名:小驼峰 studentScore 或者下划线命名 student_score,见名知意,禁止单个无意义字母(除循环临时变量i,j)
  2. 类名:大驼峰(帕斯卡命名)StudentInfo,每个单词首字母大写
  3. 常量 / 宏:全大写,下划线分隔 MAX_SIZE
  4. 函数名:小驼峰 getScore() 或下划线 get_score()
  5. 禁止中文拼音命名,不使用缩写(除非通用缩写)

二、格式与缩进

  1. 缩进:4 个空格,不要用 Tab;
  2. 大括号:两种风格任选一种,整个代码统一:
// 风格1(推荐,Allman)
if (flag)
{
    cout << "hello";
}

// 风格2(K&R)
if (flag) {
    cout << "hello";
}
  1. 运算符两侧加空格:int a = b + c;
  2. 一行只写一条语句

三、头文件规范

  1. 头文件保护宏,防止重复包含:
#ifndef STUDENT_H
#define STUDENT_H
// 声明代码
#endif
  1. include 顺序:C++ 标准库 → C 库 → 自定义头文件

四、注释规范

  1. 函数、类写块注释,说明功能、参数、返回值;
  2. 代码行复杂逻辑加行注释;
  3. 不要写多余废话注释,注释说明为什么,不是代码做了什么
// 计算两数之和
int add(int a, int b)
{
    return a + b;
}

五、类型、变量与内存规范

  1. 变量就近定义,不要全部写在函数最开头;
  2. 优先使用const修饰不可修改变量,const int N = 100;
  3. 使用new分配的内存,必须配套delete释放,防止内存泄漏;
  4. 尽量少用裸指针,优先用引用、智能指针std::shared_ptr

六、函数规范

  1. 函数功能单一,一个函数只做一件事;
  2. 函数不宜过长,控制在几十行内;
  3. 参数优先传const &(避免拷贝开销)

void printInfo(const Student &stu);

posted @ 2026-10-11 15:21  Tracy__cc  阅读(4)  评论(0)    收藏  举报