易截截图软件、单文件、免安装、纯绿色、仅160KB

高质量 C/C++编程笔记

高质量C++编程 Note
定义1:能长期稳定地编写出高质量程序的程序员称为编程老手。
定义2:能长期稳定地编写出高难度、高质量程序的程序员称为编程高手。
版权和版本的声明位于头文件和定义文件的开头 ,主要内容有:
(1)版权信息。
(2)文件名称,标识符,摘要。
(3)当前版本号,作者/修改者,完成日期。
(4)版本历史信息。
 
头文件由三部分内容组成:
(1)头文件开头处的版权和版本声明。
(2)预处理块。
(3)函数和类结构声明等。
定义文件有三部分内容: (1)  定义文件开头处的版权和版本声明。
(2)  对一些头文件的引用。
(3)  程序的实现体(包括数据和代码) 。
 如果一个软件的头文件数目比较多(如超过十个) ,通常应将头文件和定义文件分别保存于不同的目录,以便于维护。
在每个类声明之后、每个函数定义结束之后都要加空行。
在一个函数体内,逻揖上密切相关的语句之间不加空行,其它地方应加空行分隔。
一行代码只做一件事情,如只定义一个变量,或只写一条语句。这样的代码容易阅读,并且方便于写注释。
if、for、while、do 等语句自占一行,执行语句不得紧跟其后。不论执行语句有多少都要加{}。这样可以防止书写失误。
关键字之后要留空格。象 const、virtual、inline、case  等关键字之后至少要留一个空格,否则无法辨析关键字。象 if、for、while 等关键字之后应留一个空格再跟左括号‘ (’ ,以突出关键字。
函数名之后不要留空格,紧跟左括号‘ (’ ,以与关键字区别。
‘ (’向后紧跟, ‘) ’ 、 ‘, ’ 、 ‘;’向前紧跟,紧跟处不留空格。
 ‘, ’之后要留空格,如 Function(x, y, z)。如果‘;’不是一行的结束
符号,其后要留空格,如 for (initialization; condition; update)。
赋值操作符、比较操作符、算术操作符、逻辑操作符、位域操作符,如“=” 、 “+=”  “>=” 、 “<=” 、 “+” 、 “*” 、 “%” 、 “&&” 、 “||” 、 “<<”,“^”等二元操作符的前后应当加空格。
一元操作符如“!” 、 “~” 、 “++” 、 “--” 、


相关文档:

顺时针方法 解读 C 复杂宏定义

[This was posted to comp.lang.c by its author, David Anderson, on 1994-05-06.]
The ``Clockwise/Spiral Rule''
By David Anderson
There is a technique known as the ``Clockwise/Spiral Rule'' which enables any C programmer to parse in their head any C declaration!
There are three simple steps to fo ......

C/C++求最大公约数和最小公倍数(转)

下面用到的方法叫辗转相除法,具做步骤如下   
    
   先用小的一个数除大的一个数,得第一个余数;   
   再用第一个余数除小的一个数,得第二个余数;   
   又用第二个余数除第一个余数,得第三个余数; &nb ......

C的动态内存管理 mallac()和free()

      关于c的动态内存管理一直是个经久不衰的话题,面试也是基本上都会考的,本来感觉已经明白了,但是今天使用的时候一不小心导致程序崩溃了,因此深入的去查了下资料,收获不少...贴出来与大家分享...
     先贴个错误代码:
     int * ptr = (int *)mal ......

C/C++语言void及void指针深层探索

C/C++语言void及void指针深层探索
1.概述
许多初学者对C/C++语言中的void及void指针类型不甚理解,因此在使用上出现了一些错误。本文将对void关键字的深刻含义进行解说,并详述void及void指针类型的使用方法与技巧。
2.void的含义
void的字面意思是“无类型”,void *则为“无类型指针”,void ......

【C/C++】推荐的C++书籍以及阅读顺序


当读者有一定c/c++基础
推荐的阅读顺序:
level 1
从<<essential c++>>开始,短小精悍,可以对c++能进一步了解其特性
以<<c++ primer>>作字典和课外读物,因为太厚不可能一口气看完
level 2
然后从<<effective c++>>开始转职,这是圣经,请遵守10诫,要经常看,没事就拿来翻翻 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号