总则:命名用英语,单词简单,明了。意义明确。过长的单词可以使用省略。一般是去掉元音字母形成省略。如果有通用的缩写,应该采用通用的缩写。
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. Repeater动态添加行

    <table class="table table-striped table-bordered table-hover">            <asp:Re ...

  2. Linked List Cycle (java)

    public boolean hasCycle(ListNode head) { ListNode slow=head; ListNode fast=head; if(head==null)retur ...

  3. 安装TDM-GCC

    TDM-GCC是一组免费的编译器套件,有32位和64位两种版本.其中64位版既可以编译生成64位的可执行文件,又可以编译生成32位的可执行文件.从TDM-GCC的官网可以下载到相应的安装包,安装完成后 ...

  4. Java并发编程之volatile变量

    volatile提供了弱同步机制,用来确保将变量更新通知到其它线程.volatile变量不会被缓存在寄存器中或者对其它处理器不可见的地方,因此在读取volatile变量时总会返回最新写入的值.可以想象 ...

  5. Codeforces Round #194 (Div. 2) D. Chips

    D. Chips time limit per test:1 second memory limit per test:256 megabytes input:standard input outpu ...

  6. centos安装phpMyAdmin

     phpMyAdmin是一个网络接口,通过它可以管理你的MySQL数据库. 首先,我们使CentOS系统RPMForge软件库的phpMyAdmin,而不是官方的CentOS 6.2库: 所以需要导入 ...

  7. git安装及使用简介

    从源代码安装 有人觉得从源码安装 Git 更实用,因为你能得到最新的版本. 二进制安装程序倾向于有一些滞后,当然近几年 Git 已经成熟,这个差异不再显著. 如果你想从源码安装 Git,需要安装 Gi ...

  8. MVC WebApi 用户验证 (2)

    构建ASP.NET MVC5+EF6+EasyUI 1.4.3+Unity4.x注入的后台管理系统(66)-MVC WebApi 用户验证 (2)   前言: 构建ASP.NET MVC5+EF6+E ...

  9. python连接redis002

    例子001. 通过StrictRedis模式连接到redis.并调用get命令读取了一个string类型的值. #!/usr/bin/python #!coding:utf-8 import redi ...

  10. Oracle EBS-SQL (QA-1):检查超出检验周期的检验数据.sql

    select msi.segment1                                    物料编码,          msi.DESCRIPTION                ...