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();

class Player{ 
public: 
void set_player_id(const int player_id){return player_id_=player_id;} 
int get_player_id() const{return player-id_;} 
private: 
int palyer_id_; 
};

7.枚举命名规则

枚举类名属于类型名,按类命名,枚举值全大写加下划线,比如:ENUM_NAME

8.宏变量命名规则

如果你一定要用到宏,全大写加下划线,比如:define PI_ROUND 3.0

9.格式美化

可以借助工具进行美化。方便快捷。比如说我用的Qt里面的Beautifier,就可以进行一键格式化代码。

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/341374.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

pat 乙级 1028 人口普查(C++)

题目 某城镇进行人口普查,得到了全体居民的生日。现请你写个程序,找出镇上最年长和最年轻的人。 这里确保每个输入的日期都是合法的,但不一定是合理的——假设已知镇上没有超过 200 岁的老人,而今天是 2014 年 9 月 6 日&#xf…

c++ 为什么要按它们声明的顺序初始化成员变量?

我今天正在写一些代码,并得到一个奇怪的编译错误,这似乎是由初始化成员变量的顺序不同于他们声明的。 class Test {int a;int b;public:Test() : b(1), a(2) {} };int main() {Test test;return 0; } 然后,如果我编译它与-Werror -Wall&…

如何在Java中使用Lombok删除样板安装程序获取器

你好朋友, 一次又一次反对Java的观点之一是,我们必须写很多样板 我们简单的POJO类的setter和getter形式的代码,不必要地增加了 我们代码的长度。 为了解决这个问题,有一个名为Project Lombok的开源项目可以解决这个问题。 通过…

Python 列表list与数组array的区别

1. 列表list与数组array的定义: 列表是由一系列按特定顺序排列的元素组成,可以将任何东西加入列表中,其中的元素之间没有任何关系; Python中的列表(list)用于顺序存储结构。它可以方便、高效的的添加删除元素,并且列…

Dev-C++使用技巧1(亲测)(超详细)(安装过程、修改语言、新建项目、配置C++ 11、开启警告信息和调试信息)

前言 Dev-C是一款内存占用小,支持C/C,支持调试,可以一键编译、运行的IDE(集成开发环境)。 下载链接:Dev-C - Download 如果上面那个不行或者下载比较慢,可以点链接: Dev-Cpp 提取码: xaby 。 …

python列表各元素修改为int类型

import numpy as np action np.trunc(action).astype(int).tolist() 函数去掉小数,但元素本身并不是整数。( 例1. 或者 2. 没有小数,但也不是整数) 要保证元素本身是int类型,则使用astype() (得到 [ 1 2…

pat 乙级 1029 旧键盘(C++)

题目 旧键盘上坏了几个键,于是在敲一段文字的时候,对应的字符就不会出现。现在给出应该输入的一段文字、以及实际被输入的文字,请你列出肯定坏掉的那些键。 输入格式: 输入在 2 行中分别给出应该输入的文字、以及实际被输入的文…

1.0jpa 2.0_JPA 2.1类型转换器–持久枚举的更好方法

1.0jpa 2.0可以使用JPA 2.0保留枚举,但是没有很好的方法来实现。 使用Enumerated批注,可以使用EnumType.ORDINAL或EnumType.STRING将枚举值映射到其数据库表示形式。 但是这两种选择都有一些缺点,我们将在本文的第一部分中进行讨论。 在第二部…

从网络虚拟化,看智能网卡发展史

5G的到来无疑将加速网络虚拟化的进程,在电信领域,网络虚拟化不仅在核心网,也在网络的边缘。但是,仅仅通过软件解决方案不能提供足够的网络可靠性和服务质量,而具有高级可编程功能智能网卡(Smart NIC&#x…

Dev-C++使用技巧2(亲测)(更改字体和颜色、自动保存、快捷键选项、一键排版)

更改字体和颜色 顶部菜单栏->工具->编辑器选项。 更改字体 当前选项卡->显示,字体word有的基本都有,华文楷体、宋体,幼圆之类。西文字体默认字体Consloas就不错,中文的话幼圆、新宋体都挺不错。 幼圆效果&#xff1…

Java恶意序列化背后的历史和动机

与Java的序列化机制有关的问题已广为人知。 有效的Java 1st Edition (第10章)和有效的Java 2nd Edition (第11章)的整个最后一章都专门讨论Java的序列化主题。 Effective Java 3rd Edition (第12章)的最后一…

深入浅出全面解析RDMA

RDMA(RemoteDirect Memory Access)技术全称远程直接内存访问,就是为了解决网络传输中客户端与服务器端数据处理的延迟而产生的。它将数据直接从一台计算机的内存传输到另一台计算机,无需双方操作系统的介入。这允许高吞吐、低延迟的网络通信,…

pat 乙级 1030 完美数列(C++)

题目 给定一个正整数数列,和正整数 p,设这个数列中的最大值是 M,最小值是 m,如果 M≤mp,则称这个数列是完美数列。 现在给定参数 p 和一些正整数,请你从中选择尽可能多的数构成一个完美数列。 输入格式&…

hypervisor介绍

hypervisor:一种运行在物理服务器和操作系统之间的中间层软件,可以允许多个操作系统和应用共享一套基础物理硬件。可以将hypervisor看做是虚拟环境中的“元”操作系统,可以协调访问服务器上的所有物理设备和虚拟机,所以又称为虚拟…

pat 乙级 1031 查验身份证(C++)

题目 一个合法的身份证号码由17位地区、日期编号和顺序编号加1位校验码组成。校验码的计算规则如下: 首先对前17位数字加权求和,权重分配为:{7,9,10,5,8,4,2&#xff0…

Selenium WebDriver中的TestNG侦听器及示例

Java提供了不同的接口,使您可以修改TestNG行为。 这些接口在Selenium WebDriver中进一步称为TestNG侦听器。 TestNG Listeners还允许您根据项目要求自定义测试日志或报告。 Selenium WebDriver中的TestNG侦听器是侦听某些事件并跟踪测试执行情况的模块,…

pat 乙级 1032 挖掘机技术哪家强(C++)

题目 为了用事实说明挖掘机技术到底哪家强,PAT 组织了一场挖掘机技能大赛。现请你根据比赛结果统计出技术最强的那个学校。 输入格式: 输入在第 1 行给出不超过 105 的正整数 N,即参赛人数。随后 N 行,每行给出一位参赛者的信息…

Ubantu键盘快捷键

Ubuntu系统 长按"Win"键可打开快捷键提示界面

win10安装python详细过程

关于python的安装 一切语言皆为工具接下来咱们就开始吧一切语言皆为工具 既然你决定安装它,那就已经告知自己要掌握这门工具, 但是有一定你一定要铭记于心那就是: python 是个工具时刻想着如何用它解决你的问题【哪怕是一个简单的想法】 接…

Spring Boot中的@SpringBootConfiguration注释

Spring Boot中的 SpringBootConfiguration注释是一个类级别的注释,它指示此类提供了应用程序配置。 通常,具有main()方法的类最适合此注释。 我们通常使用SpringBootApplication批注,该批注会自动继承SpringBootConf…