C++命名规范——谷歌规范
1.文件命名规则
文件名全部小写,可以含下划线或连字符,按项目约定命名,且尽量保证文件名明确。比如:
cmd_save_player_info_class.cc ,my_use_full_class.cc
定义类的文件名一般是成对出现,如:foo_bar.h foo_bar.cc
若是类中含大量内联函数,我们还可使用-ini.h文件,使之文件内容更加清晰,于是又如:
url_table.h url_table.cc url-table-ini.h
2.类命名规则
类型命名每个单词首字母大写,不含下划线,以名词形式。比如:MyPalyerManager,这对于所有类型命名一样,类结构体,枚举,类定义都是如此,比如:MyExcitingEnum
3.变量命名规则
变量名一律小写,单词用下划线相连,例如:int player_id; string table_name;
特殊的是类成员变量,后跟下划线区别普通变量,比如:player_name_ player_id_
全局变量则以 g_ 开头,比如 :g_system_time
当然结构体成员变量还是和普通变量一样,比如:string name; int num_entries;
4.常量命名规则
k后面跟大写字母开头的单词,比如:
const int kDaysInAWeek=7; const string kCompanyName=”Tecent”;
5.函数命名规则
常规函数每个单词首字母大写,使用命令式语气,比如:OpenFile() CheckFileName(),
而存取函数或短小的内联函数使用小写加下划线,且与访问变量相吻合,比如set_num_errors();
6.枚举命名规则
枚举类名属于类型名,按类命名,枚举值全大写加下划线,比如:ENUM_NAME 。
7.宏变量命名规则
如果你一定要用到宏,全大写加下划线,比如:define PI_ROUND 3.0。
C++命名规范——谷歌规范的更多相关文章
- CSS那些事!这个篇幅是我特意开的,不是因为帮助小菜之类的,而是在多人的团队配合中各种命名冲突的规范让人蛋疼
CSS那些事!这个篇幅是我特意开的,不是因为帮助小菜之类的,而是在多人的团队配合中各种命名冲突的规范让人蛋疼. css这个东西只要不是新的离谱都会写,但是每个人的命名风格,方法,都不同 有人喜欢驼峰, ...
- SQL Server 数据库设计、命名、编码规范
https://blog.csdn.net/songguozhi/article/details/5858159 SQL Server 数据库设计.命名.编码规范
- JavaSript模块规范 - AMD规范与CMD规范介绍(转)
JavaSript模块规范 - AMD规范与CMD规范介绍 JavaSript模块化 在了解AMD,CMD规范前,还是需要先来简单地了解下什么是模块化,模块化开发? 模块化是指在解决某一个复杂问题或者 ...
- php命名、注释规范
一.注释 1.文件头部模板 /** *这是一个什么文件 * *此文件程序用来做什么的(详细说明,可选.). * @author richard<e421083458@163.com> * ...
- SQL Server性能优化(4)命名和书写规范
命名规范是一个老生常谈的问题,好的命名规范对于团队程序开发,对bug定位.处理,项目延续有很重要的作用. 一. 列举现在的问题: 1.名称首字母不大写 2. 用中文名字 ...
- JAVA命名、注释规范
一.命名规范 1. 项目名全部小写 2. 包名全部小写(除非部分是缩写) 3. 类名首字母大写,如果类名由多个单词组成,每个单词的首字母都要大写. 如:public class MyFirstClas ...
- mysql-笔记-命名、索引规范
1 命名规范 所有数据库对象名称必须使用小写字母并用下划线分割 禁止使用mysql保留关键字 ---如果表名中包含关键字查询时,需要将其有单引号括起来 见名识意,并且最后不要超过32个字符 临时库表以 ...
- 阿里Java开发规范&谷歌Java开发规范&华为Java开发规范&Tab键和空格比较&Eclipse的Tab键设置 总结
现在收集到如下有用的信息: 阿里巴巴公开的Java开发规范:https://yq.aliyun.com/articles/69327?utm_content=m_10088 google公开的Java ...
- css命名和书写规范
前言 在项目开发中对于css名字的命名和书写老是感觉很混乱,这对于代码的可读性以及维护提出了挑战,所以在闲暇之余看了一些这方面的内容,现总结如下... 1.命名规则说明 所有的命名最好都小写 属性的值 ...
随机推荐
- less在vscode中的配置方式
1.在vscode插件中下载easy less这个插件. 2.新建项目,分别建两个文件夹存放less和自动编译好的css,页面中引入文件引css就可以了. 3.根据你的文件位置,在用户设置中设置需要配 ...
- JS开发常用工具函数
1.isStatic:检测数据是不是除了symbol外的原始数据 function isStatic(value) { return ( typeof value === 'string' || ty ...
- SPFA和堆优化的Dijk
朴素dijkstra时间复杂度$O(n^{2})$,通过使用堆来优化松弛过程可以使时间复杂度降到O((m+n)logn):dijkstra不能用于有负权边的情况,此时应使用SPFA,两者写法相似. 朴 ...
- MySQL 如何使用 PV 和 PVC?【转】
本节演示如何为 MySQL 数据库提供持久化存储,步骤为: 创建 PV 和 PVC. 部署 MySQL. 向 MySQL 添加数据. 模拟节点宕机故障,Kubernetes 将 MySQL 自动迁移到 ...
- SpringCloud实战——(1)创建SpringCloud项目
首先创建一个SpirngCloud工程,并添加公用依赖. <?xml version="1.0" encoding="UTF-8"?> <pr ...
- 第1节 IMPALA:7、impala的安装以及配置过程
6.制作本地yum源 镜像源是centos当中下载相关软件的地址,我们可以通过制作我们自己的镜像源指定我们去哪里下载impala的rpm包,这里我们使用httpd这个软件来作为服务端,启动httpd的 ...
- C++中数据类型表示范围
32位机器环境下结果如下: Type Size 数值范围 无值型void 0 byte 无值域 布尔型bool 1 byte true false 有符号短整型short [int] /signe ...
- windows电脑安装python教程
1 版本选择 2.x版本将慢慢退出历史的舞台,建议你从3.x开始学习,本教程所使用的python版本是3.6 2 下载安装包 进入官网下载页面 https://www.python.org/downl ...
- uniapp属性插值报错Interpolation inside attributes has been removed. Use v-bind or the colon shorthand instead.
解决方法: 因为vue 2.x不支持对属性使用插值{{}}的方式赋值,所以要使用v-bind指令(或简写“:”)来指定属性. v-bind指令 v-bind:id="item.id" ...
- Ubuntu 14.04 配置 VNC Server
用putty连接Linux后,如果会话断开,也会终止此会话在Linux执行的任务. 用WinSCP传输文件很方便,目前也只能传输文件. 按照以下步骤以及提示,安装VNC Server, 1.apt-g ...