Google C++ style guide——命名约定
1.通过命名规则
函数命名、变量命名、文件命名应具有描写叙述性。
类型和变量应该是名词,函数名能够用“命令性”动词。
2.文件命名
文件名称所有小写,能够包括下划线(_)或者断线(-)。
foo_bar.h、foo_bar.cc
类型命名
每一个单词以大写字母开头,不包括下划线。MyClass
3.类型命名
全部类型命名——类、结构体、类型定义、枚举——使用同样约定。class FooClass{...}、enum FooType{...}
4.变量命名
变量名一律小写,单词间下面划线相连,类的成员变量下面划线结尾。
my_value、my_value_。
结构体的数据成员能够和普通变量一样,不用像类那样接下划线。
全局变量能够以g_为前缀。
5.常量命名
(不管是局部的、全局的还是类中的)以k为前缀。k后接大写字母开头的单词。
6.函数命名
普通函数名以大写字母开头,每一个单词首字母大写。没有下划线。
存取函数要与存取的变量名匹配。例:
class MyClass{
public:
int num_entries() const { return num_entries; }
void set_num_entries(int num_entries) { num_entries_ = num_entries; }
private:
int num_entries_;
}
其它短小的内联函数名也能够使用小写字母。
小写的函数名意味着能够直接内联使用。
7.命名空间
命名空间的名称是全小写。其命名基于项目名称和文件夹结构。
8.枚举命名
枚举值应所有大写。单词间下面划线相连。
枚举名称属于类型,因此大写和小写混合。
例:
enum UrlTableErrors
{
OK = 0,
ERROR_OUT_OF_MEMORY,
ERROR_MALFORMED_INPUT
}
9.宏命名
所有大写。单词间使用下划线。
Google C++ style guide——命名约定的更多相关文章
- [Guide]Google C++ Style Guide
0.0 扉页 项目主页 Google Style Guide Google 开源项目风格指南 -中文版 0.1 译者前言 Google 经常会发布一些开源项目, 意味着会接受来自其他代码贡献者的代码. ...
- Google C++ Style Guide在C++11普及后的变化
转 http://www.cnblogs.com/chen3feng/p/5972967.html?from=timeline&isappinstalled=0&lwfrom=user ...
- 一张图总结Google C++编程规范(Google C++ Style Guide)
Google C++ Style Guide是一份不错的C++编码指南,我制作了一张比較全面的说明图,能够在短时间内高速掌握规范的重点内容.只是规范毕竟是人定的,记得活学活用.看图前别忘了阅读以下三条 ...
- Google Shell Style Guide
转自:http://google.github.io/styleguide/shell.xml Shell Style Guide Revision 1.26 Paul Armstrong Too m ...
- Google JavaScript Style Guide
转自:http://google.github.io/styleguide/javascriptguide.xml Google JavaScript Style Guide Revision 2.9 ...
- Google C++ Style Guide的哲学
Google C++ Style Guide并不是一个百科全书,也不是一个C++使用指南,但它描述适用于Google及其开源项目的编码指南,并不追求全面和绝对正确,也有许多人置疑它的一些规则.但作为一 ...
- electron教程(番外篇一): 开发环境及插件, VSCode调试, ESLint + Google JavaScript Style Guide代码规范
我的electron教程系列 electron教程(一): electron的安装和项目的创建 electron教程(番外篇一): 开发环境及插件, VSCode调试, ESLint + Google ...
- Google coding Style Guide : Google 编码风格/代码风格 手册/指南
1 1 1 https://github.com/google/styleguide Google 编码风格/代码风格 手册/指南 Style guides for Google-originated ...
- [Guide]Google Python Style Guide
扉页 项目主页 Google Style Guide Google 开源项目风格指南 - 中文版 背景 Python 是Google主要的脚本语言.这本风格指南主要包含的是针对python的编程准则. ...
随机推荐
- js 几个特殊情况
alert(033-15);//12,前缀0用在直接量中,表示八进制 alert('033'-15);//18,前缀0用在字符串中,在(隐式)转换将忽略 alert(parseInt('033')-1 ...
- Android Camera调用过程分析
源代码版本:allwinner 4.0.4 frameworks代码: frameworks/base/core/java/android/hardware/Camera.java JNI层代码: f ...
- Java学习之开篇—个人随想
现在大三上学期了,家里希望考研,不然觉得我这学校不好找工作,我自己觉得工作还是靠自己,学校就像给人第一眼感觉那样,虽然重要但也只会吸引HR多看两眼,真正留得住HR的还是要有拿的出手的技能. 当初凭着对 ...
- 【甘道夫】使用HIVE SQL实现推荐系统数据补全
需求 在推荐系统场景中,假设基础行为数据太少,或者过于稀疏,通过推荐算法计算得出的推荐结果非常可能达不到要求的数量. 比方,希望针对每一个item或user推荐20个item,可是通过计算仅仅得到8个 ...
- SEO市场是在扩大还是缩小 Seoer终于会变成什么?
近期有两件全然背道而驰的事情同一时候发生.第一件事情是以SEO业务为主要业务的业者逐渐降低,很多原本是SEO的业者都纷纷转向其它业务.SEO业务反而变成副业.第二件事情是中小企业的SEO需求添加了.而 ...
- MVC自定义AuthorizeAttribute实现权限管理
[转]MVC自定义AuthorizeAttribute实现权限管理 原文载自:小飞的DD http://www.cnblogs.com/feiDD/articles/2844447.html 网站的权 ...
- json接口相关(建议结合JFinal框架)
/** * */ package net.wicp.wvqusrtg; import java.util.HashMap; import net.sf.json.JSONArray; import n ...
- [POJ 1521]--Entropy(哈夫曼树)
题目链接:http://poj.org/problem?id=1521 Entropy Time Limit: 1000MS Memory Limit: 10000K Description A ...
- BZOJ 1412: [ZJOI2009]狼和羊的故事( 最小割 )
显然是最小割...把狼的领地连S, 羊的领地连T, 然后中间再连边, 跑最大流就OK了 -------------------------------------------------------- ...
- PHP使用纯真IP数据库
#纯真数据库调用函数(需要下载纯真数据库文件) function convertip($ip) { $ip1num = 0; $ip2num = 0; $ipAddr1 =""; ...