总则:命名用英语,单词简单,明了。意义明确。过长的单词可以使用省略。一般是去掉元音字母形成省略。如果有通用的缩写,应该采用通用的缩写。
1、函数命名
1.1:全局函数:采用限定词+动词(+名词的原则)。如:void RmodelSetWidth()
1.2:类的成员函数:采用动词(+名词)的原则。如void SetWidth
2、宏
宏的定义必须全部采用大写字母。单词之间必须用下划线隔开。如:
#define MAX_LEN 1024
这里顺便说一下,常变量的命名方式也必须采用全大写的方式,如:
const int MAX_LEN=1024;
3、变量命名
命令的命名方式应该采用匈牙利命名法,即[限定词 + ‘_’ + ]  类型缩写+意义名词。
3.1、全局变量的命名
全局变量必须以“g_”开头。如int g_nAge;其中n表示为int型
3.2、局部变量的命名不加限定词。如int nAge;
3.3、类中成员变量的命名:类中成员变量的命名必须以"m_"开头。如int m_nAge;
3.4、静态变量
局部静态变量以“s_”开头。类中静态变量的以"ms_"开头
3.5、指针变量以p为前缀。如int *pnName;
3.6、参数命名与局部变量相同。即:类型缩写+意义名词
4、其它命名
4.1、枚举(enum)应该加大写字母“EM”作为前缀。枚举表中的命名必须遵循常量的命名规则。
4.2、联合(union)以“UN”开头。
4.3、结构体以“ST”作为前缀。结构体包含的数据类型遵循局部变量的命名规则。
4.4C++的类的命名规则以“C”开头。类的命名采用“名词”或者“形容词+名称”。不能直接采用“名词”的形式

C++命名准则的更多相关文章

  1. [css] 【转载】 精简高效的CSS命名准则/方法

    原文链接:http://www.zhangxinxu.com/wordpress/2010/09/%E7%B2%BE%E7%AE%80%E9%AB%98%E6%95%88%E7%9A%84css%E5 ...

  2. 精简高效的css命名准则

    对于css,为了避免样式冲突,我们总会赋予相当特殊的命名,或是在选择符上添加html标记,或是使用层级.我们为避免在冲突上做文章,就会把代码的命名变得复杂化. 如果css的重用性越高,相比就越高效.如 ...

  3. 精简高效的CSS命名准则/方法

    /* ---------------------single CSS----------------------- */ /* display */ .dn{display:none;} .di{di ...

  4. (转)面向属性的CSS命名

    原文链接:戳这里 自从开始做前端开发以来,我发现在开发页面的时候,总是有一个问题十分影响自己的开发效率,这个问题就是css的命名,主要是指css类选择器的命名.这个问题主要体现在:第一,有的内容你压根 ...

  5. 面向属性的CSS命名

    自从开始做前端开发以来,我发现在开发页面的时候,总是有一个问题十分影响自己的开发效率,这个问题就是css的命名,主要是指css类选择器的命名.这个问题主要体现在:第一,有的内容你压根想不出用什么名字来 ...

  6. C++编程命名规则(转载)

    原文地址:http://www.cnblogs.com/ggjucheng/archive/2011/12/15/2289291.html 如果想要有效的管理一个稍微复杂一点的体系,针对其中事物的一套 ...

  7. [转载]C++命名规则

    在软件开发这一高度抽象而且十分复杂的活动中,命名规则的重要性更显得尤为突出.一套定义良好并且完整的.在整个项目中统一使用的命名规范将大大提升源代码的可读性和软件的可维护性. 在引入细节之前,先说明一下 ...

  8. C++编程命名规则

    原文地址:http://www.cnblogs.com/ggjucheng/archive/2011/12/15/2289291.html 如果想要有效的管理一个稍微复杂一点的体系,针对其中事物的一套 ...

  9. C++命名规则 (转载仅作参考)

    如果想要有效的管理一个稍微复杂一点的体系,针对其中事物的一套统一.带层次结构.清晰明了的命名准则就是必不可少而且非常好用的工具. 活跃在生物学.化学.军队.监狱.黑社会.恐怖组织等各个领域内的大量有识 ...

随机推荐

  1. Eclipse开发Android项目安装配置

    在windows安装Android的开发环境不简单也说不上算复杂,本文写给第一次想在自己Windows上建立Android开发环境投入Android浪潮的朋友们,为了确保大家能顺利完成开发环境的搭建, ...

  2. Unique Binary Search Trees In JAVA

    Given n, how many structurally unique BST's (binary search trees) that store values 1...n? For examp ...

  3. javascript EcmaScript5 新增对象之Object.freeze

    我们都知道在js里对象是很容易改变的 var obj1 ={ a:'111' } obj1.a = '222'; console.log( obj.a ) //output 222 对象的属性发生了变 ...

  4. C++程序设计实践指导1.7超长数列中n个数排序改写要求实现

    改写要求1:将以上程序改写为适合超长整数 改写要求2:将以上程序改写为适合超长数列 改写要求3:将数列中指定位置m开始的n个结点重新按降序排序 改写要求4:输出指定位置m开始的n个结点的超长整数 #i ...

  5. [?]Unity快捷键

    Super=Win键. Rererence: What are Unity's keyboard and mouse shortcuts?

  6. 区分innerHeight与clientHeight、innerWidth与clientWidth、scrollLeft与pageXOffset等属性

    window对象:(1)innerHeight属性:窗口中文档显示区域的高度,不包括菜单栏.工具栏等部分.该属性可读可写.     IE不支持该属性,IE中body元素的clientHeight属性与 ...

  7. Linux Power(一): kernel/power/earlysuspend.c

    /* kernel/power/earlysuspend.c * * Copyright (C) 2005-2008 Google, Inc. * * This software is license ...

  8. make clean与make distclean的区别

    make clean仅仅是清除之前编译的可执行文件及配置文件. 而make distclean要清除所有生成的文件. Makefile 在符合GNU Makefiel惯例的Makefile中,包含了一 ...

  9. Python之路第七天,基础(9)-面向对象(上)

    面向对象的编程思想 回想 我们所学过的编程方法: 面向过程:根据业务逻辑从上到下写堆叠代码. 函数式编程:将重复的代码封装到函数中,只需要写一遍,之后仅调用函数即可. 面向过程编程最易被初学者接受,其 ...

  10. 【Xamarin 挖墙脚系列:Xamarin SDK开源了................】

                                                                  在前不久举行的 Build 2016 开发者大会上,微软宣布它收购的 Xam ...