代码规范
1065
2023.03.07
发布于 未知归属地
  1. 前言

  2. 个人编写的代码规范

    1. 链接
    2. 请求合作
    3. 大体章节
  3. END

前言

  • 什么是代码规范
    • 一套用于统一代码开发的准则
  • 为什么需要代码规范
    • 提升代码可读性,提升团队效率

个人编写的代码规范

近期本人编写了一份以C/C++为主的代码规范。

其他语言开发者也可以阅读参考。

本文档可供中小团队二次修改后直接使用。

链接

https://github.com/cuber-lotus/CodeStandard

请求合作

想对于各种成熟的代码规范,本文档还有很多欠缺,有格式方面,有内容方面,有准确性方面。

因此希望与大家一起来完善本规范。

1539349804@qq.com

大体章节

最后放一个大体的章节目录

  • 代码规范

  • 前言

    • 目的

    • 宗旨

    • 使用说明

  • 包和文件

  • 用路径来管理不同模块

  • 头文件与源文件

  • 文件

  • 注释

    • /**/与//

    • 文件头注释

    • 类注释

    • 函数注释

    • 代码注释

    • TODO注释

    • 尾部注释

    • 细节技巧

    • 特殊情况

  • 缩进

    • 使用空格而不是tab

    • 注释与注释目标对齐

    • 类权限与class关键字对齐

    • 不缩进情况

    • 行长的限定

    • 换行

  • 语句块

    • for, while, if, switch, case, do, goto, try

    • if else

    • switch

    • goto

    • 逗号后加空格

    • 判断语句较长时运算符换行保持统一

    • 指针和引用左右选择一边留空格

    • 综合举例

  • 命名

    • 常用命名规范类型

    • 长度应该适中

    • 缩写

    • 文件

    • namespace

    • class & struct

    • 函数

    • 变量

    • enum

    • union

    • using和typedef

    • 注意

  • 运算符

    • 多元运算符要左右空格

    • 一元运算符要贴近变量成员访问符号要贴近变量

    • 减少使用自增++和自减--

    • 使用括号增加可读性

    • 比较运算符左侧尽量写常量

    • 用比较运算符代替非0即1

  • 函数

    • 函数功能应该明确

    • 使用引用,减少使用指针

    • 重载函数应该相邻编写

    • 指针参数应该检测合法性

    • lambda表达式

    • 继承顺序

    • 权限顺序

    • 内容顺序

    • 构造函数顺序

    • 运算符重载顺序

    • 使用explicit避免隐式类型转换

    • 自定义拷贝和移动语义

    • 使用override, delete, default, final

    • 特殊情况

  • 内存管理

    • 使用new/delete而非malloc/free

    • 合理使用智能指针

  • 其他

    • 异常

    • 类型转换

    • 明示类型长度

    • 初始化

  • 团队合作

    • 不要修改不是自己写的文件

    • 不要修改已经确定提供给外部的接口名

  • 后记




END

评论 (0)