重读金典------高质量C编程指南(林锐)-------第三章 命名规则
3.1 共性规则
规则:标识符应该直观且可以拼读,可进行英语翻译。
规则:标识符的长度需要控制好,不应该太长。
规则:命名规则应该同操作系统或者开发工具等保持一致,比如大小写混用。AddChar();
规则:程序中最好不要仅靠大小写区分的变量。 X 与 x
规则:程序中不要出现同名的变量。
规则:变量的名字可以是 n 或者 adj + n; value oddvalue
规则:函数的名字可以是 v 或者 v + n; DrawBox();
规则:可用反义词命名互斥的两个变量或者函数。 minValue 与 maxValue;
3.2 简单的windows应用程序命名规则
规则:类名与函数名用大写字母开头 class Node; void Draw();
规则:变量和参数用小写字母开头 BOOL flag;
规则:常量全用大写字母,可用下划线分割单词 const int MAX = 10; const int MAX_LENGTH = 100;
规则:静态变量前面加上s_
规则:如果用全局变量,前面加g_ int g_Max;
规则:类的书籍成员加前缀m_,可以避免类的数据成员与函数的参数以及局部变量同名。 m_width = width;
规则:为了防止某一软件库中的一些标识符和其它软件库中的冲突,可以为各种标识符加上能反映软件性质的前缀。例如三维图形标准OpenGL的所有库函数均以gl开头,所有常量(或宏定义)均以GL开头。
重读金典------高质量C编程指南(林锐)-------第三章 命名规则的更多相关文章
- 重读金典------高质量C编程指南(林锐)-------第七章 内存管理
		2015/12/10补充: 当我们需要给一个数组返回所赋的值的时候,我们需要传入指针的指针.当我们只需要一个值的时候,传入指针即可,或者引用也可以. 结构大致如下: char* p = (char*) ... 
- 重读金典------高质量C编程指南(林锐)-------第一章 文件结构
		第一章 文件结构 C/C++程序通常由两个文件组成,一个文件保存程序的声明,称为头文件,.h 文件.一个保存程序的实现,称为定义文件.c文件. 1.1 版权与版本的声明 版权和版本的声明 ... 
- 重读金典------高质量C编程指南(林锐)-------第六章 函数设计
		函数设计最重要的无外乎两个方面,一个是函数的接口设计一个是内部实现的一些规则. 在C语言中,函数的参数和返回值的传递方式分为两种: 值传递与指针传递.而C++中,多了一个引用传递. 引用传递有些像指针 ... 
- 重读金典------高质量C编程指南(林锐)-------第五章 常量
		5.1 为什么需要常量 1)为了便于用户理解,增加程序的可读性. 2)在程序的很多地方都用到同一个常量,用某一个宏常量来定义可以减少错误. 规则:尽可能的使用含义直观明确的常量来表示程序中多次出现的 ... 
- 重读金典------高质量C编程指南(林锐)-------第四章 表达式和基本语句
		4.1 运算符的优先级 规则:如果代码行中的运算符比较多,可用括号确定操作顺序.if((a|b)&&(a&c)) 4.2 复合表达式 规则:不要编写太复杂的复合表达式 ... 
- 重读金典------高质量C编程指南(林锐)-------第二章 程序的板式
		2.1 空行 规则1:在每个类声明之后,每个函数定义结束之后加空行. 规则2:在某个函数体内,相关的不加空行,不相关的加空行. // 空行 void Function1(-) { - } // 空行 ... 
- 《JS权威指南学习总结--第三章类型、值和变量》
		第三章 类型.值和变量 内容要点 一.数据类型 1.在编程语言中,能够表示并操作的值的类型称做数据类型 2.JS的数据类型分为两类: 原始类型:数字.字符串和布尔值 对象类型 3.JS中有两个特殊的原 ... 
- 安卓权威编程指南-笔记(第27章 broadcast intent)
		本章需求:首先,让应用轮询新结果并在有所发现时及时通知用户,即使用户重启设备后还没有打开过应用.其次,保证用户在使用应用时不出现新结果通知. 1. 一般intent和broadcast intent ... 
- 安卓权威编程指南-笔记(第21章 XML drawable)
		在Andorid的世界里,凡事要在屏幕上绘制的东西都可以叫drawable,比如抽象图形,Drawable的子类,位图图形等,我们之前用来封装图片的BitmapDrawable就是一种drawable ... 
随机推荐
- 【BZOJ1717】[Usaco2006 Dec]Milk Patterns 产奶的模式 (二分+SA)
			求重复k次的最长重复子串,解法见罗穗骞大神的后缀数组论文 ; var x,y,rank,sa,h,s,num,c:..maxn] of longint; n,time:longint; functio ... 
- 有关MongoDB数据库设计的问题
			问题一:是否collection越少越好,尽量把关系数据库中分表表示的关系嵌套进文档里?问题二:如果这样的话,一句SQL能搞定的复杂查询,mongodb也许要查询多次.mongodb的查询速度是否还比 ... 
- zabbix3.4  源码部署
			centos6.8 系统 zabbix3.4.9 msyql5.7.22 php5.6.24 在centos6上面源码部署zabbix.3.4 问题比较多,需要花不少时间去解决,建议 ... 
- TextBox取不到值及其TextBox取不到js赋的值
			原文发布时间为:2009-10-22 -- 来源于本人的百度文章 [由搬家工具导入] 原因:使用了一个只读的TextBox控件 曾经遇到过这样的问题:使用了一个只读的TextBox控件,但是在后台代码 ... 
- js禁用"Backspace"键(即禁止网页倒退)
			项目遇到的一个问题一个普通网页,如果这个网页上没有焦点的话,那么点击"Backspace"键的时候,网页会回退(倒退到上一个网页),这样就会就有一个问题,当我在一个输入框进行输入的 ... 
- Linux STP介绍
			1. 介绍 STP(Spanning Tree Protocol)即生成树协议,标准为IEEE802.1D-1998STP是一种二层冗余技术,利用STA算法构建一个逻辑上没有环路的树形网络拓扑结构,并 ... 
- [转]在Storyboard中使用自定义的segue类型
			转自:http://my.oschina.net/u/728866/blog/92709 我们知道segue共有三种类型:push.modal以及custom.如下图: 很明显,这三种类型的作用分 ... 
- CentOS 7系统添加启动项
			CentOS 7系统已经把CentOS 6的 runlevel 系统服务管理替换成了systemd.在 /etc/rc[0-6S].d 下添加启动项已经不能在系统启动的时候自动执行,需要通过新的 sy ... 
- python c++ Visual Studio相关 Unable to find vcvarsall.bat问题
			使用Cython编译包的时候报错: Unable to find vcvarsall.bat 说明:https://jingyan.baidu.com/article/adc815138162e8f7 ... 
- z-index 基础详解
			关于z-index网上其实有不少博文,写得也不错,不过有些帖子比较旧,而IE也已经更新到了IE11了,所以还是重新总结一下.由于 z-index 的属性表现和层级有关,有些特点在某些层级下才表现出来, ... 
