摘要: 一、头文件(1)注意保护头文件,防止头文件被多重包含,所有的头文件都必须使用#ifndef、#define和#endif进行保护,书写格式如下<PROJECT>_<PATH>_<FILE>_H_,全部使用大写。例如:#ifndef FOO_H_,对应于foo.h头文件。(2)在头文件中尽量少的包含别的头文件,如果可以请使用前置声明代替包含头文件。包含过多的头文件将会产生较强的依赖性,一旦文件有所改变,将会导致所有文件的重新编译。因此,尽量少的包含别的头文件而是用前置声明。在头文件如何做到使用类Foo而无需访问类的定义?1) 将数据成员类型声明为Foo *或F 阅读全文
posted @ 2013-01-10 15:37 我不是geek 阅读(3092) 评论(0) 推荐(1) 编辑
摘要: C++primer的解释是这样的: 变量的定义(definition):用于为变量分配存储空间,还可以为变量指定初始值。在一个程序中,变量有且仅有一个定义; 变量的声明(declaration):用于向程序表明变量的类型和名字。定义也是声明:当定义变量时我们声明了它的类型和名字。可以通过使用extern关键字声明变量名而不定义它。 以上解释讲得还是比较清楚的,有分配空间的叫定义,没分配空间的叫声明。好吧,你不知道什么时候分配什么时候没分配。让我们换一种说法。 “定义也是声明”,这说明声明包括定义。所以诸如int a;extern int a;之类的一定是声明。那是不是定义还要接着往下看; 如果 阅读全文
posted @ 2013-01-10 14:23 我不是geek 阅读(528) 评论(0) 推荐(0) 编辑