2. 作用域

静止使用class类型的静态或全局变量。

6. 命名约定

6.1. 函数名,变量名,文件名要有描述性,少用缩写。

6.2. 文件命名

6.2.1. 文件名要全部用小写。可使用“_”或"-",遵从项目规范,没有规范,最好使用“_”。

6.2.2. 尽量让文件名更明确。如:http_server_logs.h就比logs.h要好。

6.3. 类型命名,每个单词首字母都大写,不包含下划线。

6.4. 变量名

6.4.1. 一律小写。

6.4.2. 类的成员变量以下划线结尾,结构体不需要。

6.4.3. 全局变量尽量少用,如果要用,前面加“g_”或其它标识区分。

6.5. 常量名

6.5.1. 全局或者类里的常量名前加小写字母“k”,其它单词的首字母大写。

6.5.2. 局部常量名可不遵从6.5.1.规则,只需遵从变量名命名规则即可。

6.6. 函数名

6.6.1. 常规函数名使用大小写混写。如:MyExcitingFunction()。

6.6.2. 取值函数名和设值函数名要求与变量名匹配。如:my_exciting_member_variable()set_my_exciting_member_variable().

6.7. 枚举命名应当和常量命名或宏命名一致。优先使用常量名命名规则。如:

enum UrlTableErrors {kOK = 0,kErrorOutOfMemory,kErrorMalformedInput,
};
enum AlternateUrlTableErrors {OK = 0,OUT_OF_MEMORY = 1,MALFORMED_INPUT = 2,
};

6.8. 宏命名,全部大写(参数除外),使用“_”分隔单词。如:

#define ROUND(x) ...
#define PI_ROUNDED 3.0

转载于:https://www.cnblogs.com/gaoshenghg/p/4754998.html

c/c++编码规范(2)--作用域相关推荐

  1. JavaScript最全编码规范

    转载: JavaScript最全编码规范 类型 ●基本类型:访问基本类型时,应该直接操作类型值 ●string ●number ●boolean ●null ●undefined var foo = ...

  2. 【C++】Google C++编码规范(三):智能指针

    [C++]Google C++编码规范(一):作用域 [C++]Google C++编码规范(二):类 std::unique_ptr std::unique_ptr是C++11标准里新推出的智能指针 ...

  3. PHP标记风格,编码规范

    PHP标记风格 PHP一共支持4种标记风格 <?php echo "这是XML风格的标记"; ?> 脚本风格 <script language="php ...

  4. Go 语言编程 — 编码规范指南

    目录 文章目录 目录 参考 工程化要求 编码规范 大小约定 缩进.括号和空格约定 命名规范 包.目录命名规范 文件命名规范 标识符命名规范 变量.常量名 函数.方法名 结构体.接口名 空行.注释.文档 ...

  5. python编码规范手册-PEP8 Python 编码规范整理

    决定开始Python之路了,利用业余时间,争取更深入学习Python.编程语言不是艺术,而是工作或者说是工具,所以整理并遵循一套编码规范是十分必要的.所以今天下午我根据PEP 8整理了一份,以后都照此 ...

  6. JavaScript编码规范[百度]

    JavaScript编码规范 1 前言 2 代码风格 2.1 文件 2.2 结构 2.2.1 缩进 2.2.2 空格 2.2.3 换行 2.2.4 语句 2.3 命名 2.4 注释 2.4.1 单行注 ...

  7. Java语言编码规范

    目录1 介绍 1.1 为什么要有编码规范 1.2 版权声明 2 文件名 2.1 文件后缀 2.2 常用文件名 3 文件组织 3.1 Java源文件 3.1.1 开头注释 3.1.2 包和引入语句 3. ...

  8. Java语言编码规范(1)

    Java语言编码规范 原文出处http://java.sun.com/docs/codeconv/html/CodeConvTOC.doc.html 2 文件名(File Names) 这部分列出了常 ...

  9. PEP8 Python 编码规范整理

    决定开始Python之路了,利用业余时间,争取更深入学习Python.编程语言不是艺术,而是工作或者说是工具,所以整理并遵循一套编码规范是十分必要的.所以今天下午我根据PEP 8整理了一份,以后都照此 ...

最新文章

  1. 自动驾驶平台,阵营, 主要传感器与场景联系
  2. buffers和cache的区别
  3. map集合遍历_java---map集合获取元素与存储元素
  4. C++求LCM的和算法(附完整源码)
  5. TensorFlow之tf.nn.dropout():防止模型训练过程中的过拟合问题
  6. Linux系统安全与应用(二)——安全机制、安全控制、弱口令检测JR、网络扫描NMAP和控制台命令Netstat
  7. Hive 处理 json 数据
  8. 每天进步一点点《ML - K-means》
  9. 等保2.0标准下,测评中重点关注的内容
  10. Delphi读写UTF-8、Unicode格式文本文件
  11. PPC手机QQ2008 最新版下载
  12. 干货流出|腾讯内部几近满分的项目管理课程PPT
  13. 程序员技能与成长:程序员的必备工具箱(值得收藏)
  14. 良田高拍仪集成WEB说明
  15. python 贪吃蛇小游戏代码
  16. DFB激光器电流温度与波长的关系
  17. 标准方程法(正规方程法)
  18. 【行为管理篇】03. 网桥模式连接 ❀ 深信服上网行为管理
  19. USB的EMI和ESD设计
  20. 自动化测试 | 如何选择半导体测试系统——你不得不知道的事

热门文章

  1. .propertie文件注释
  2. CentOS6 下Vim安装和配置
  3. C++学习之路,漫长而遥远
  4. MySQL : 报错:1130-host ... is not allowed to connect to this MySql server 开放mysql远程连接 不使用localhost...
  5. maya 中使用节点连接来求余数:
  6. Pytorch 词嵌入word_embedding1初识
  7. go get 的不再src目录中_Go 每日一库之 sqlc:根据 sql 生成代码
  8. OpenResty学习地图来啦,速速收藏!
  9. gitlab或者gitee生成/添加SSH公钥的解决办法
  10. 解决 invalid input detected at ‘^’ marker的问题