欢迎来到天天文库
浏览记录
ID:57689271
大小:13.00 KB
页数:1页
时间:2020-09-01
《MySQL语法语句大全.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、高质量c/c++编程读书笔记(1)从 C++博客-首页原创精华区 作者:micromichael有19人喜欢此条目1. 为防止头文件被重复利用(通常发生在#include的嵌套中),应用#ifndef/#define/#endif产生预处理块。比如要防止graphics.h的头文件被重复利用,定义#ifndefGRAPHICS_H。(为什么用大写?)。2. 好的命名规则:静态变量加前缀s_,全局变量加前缀g_,类的数据成员加前缀m_。3. 不可将bool变量直接与TRUE,FALSE或者1,0进行比较。区别于整型变量与零值比较。不可将浮点变
2、量用“==”或“!=”与数字比较,应设法转化成“>=”或“<=”形式。应当将指针变量用“==”或“!=”与NULL比较,指针变量的零值为“空”(记为NULL)。尽管NULL的值与0相同,但两者的意义不同。(参考高质量C++编程指南4.3节)。4. 在多重循环中,如果有可能,应当将最长的循环放在最内层,最短的放在最外层,以减少CPU跨切循环层的次数。5. 如果循环体内存在逻辑判断,并且循环次数很大,宜将逻辑判断移到循环体的外面。6. C语言用#define来定义常量(称为宏常量)。C++语言除了#define外还可以用const来定义常量(称
3、为const常量)。在C++程序中只使用const常量而不使用宏常量,因为其相比#define来定义常量有更多的优点。Const常量有数据类型,而宏常量没有数据类型。因此编译器可以对前者进行安全检查。7. 建立在整个类中都恒定的常量:别指望const数据成员了,应该用类中的枚举常量来实现。由于const数据成员只在某个对象生存期内是常量,而对整个类而言是可变的,因为类可以创建多个对象,不同对象其const数据成员值可以不同。枚举常量不会占用对象的存储空间,他们在编译时被全部求值。枚举常量的缺点是它的隐含数据类型是整数,其最大值有限,且不能表示浮
4、点数。8. 如果参数是指针,并且仅做输入用,则应在类型前加const,以防止该指针在函数体内被以外修改。9. 函数名字与返回值类型在语义上不可冲突,违反这条规则的典型代表是C标准库函数getchar。由于getchar的原型为intgetchar(void)。10. 指针有些“似是而非”的特征:(1)指针消亡了,并不表示它所指的内存会被自动释放(2)内存被释放了,并不表示指针会消亡或者成为NULL指针。11. exit(1)终止整个程序的运行?
此文档下载收益归作者所有