头文件、预处理器、命名空间ITeye - 凯发娱乐

头文件、预处理器、命名空间ITeye

2019-01-13 14:13:26 | 作者: 寻巧 | 标签: 头文件,处理器,变量 | 浏览: 2104

1.头文件用于声明而不是用于界说

extern int ival = 10; //初始化了,为界说,不适合放在头文件中
double dval; //没有extern,是界说,不适合放在头文件中

 留意:防止防止多重界说链接过错。由于头文件包括在多个源文件中,所以不应该含有变量或函数的界说。

关于头文件不应该含有界说这一规矩,有三个破例:

头文件能够界说类、值在编译时就已知道的const目标和inline函数。这些实体可在多个源文件中界说,只需每个源文件中的界说是相同的。

 

2.预处理器

(1)头文件常常#include其他的头文件。比方某些类的头文件有必要包括string库

(2)防止多重包括,在编写头文件之前,需求引进一些额定的预处理器设备。预处理器答应咱们自界说变量。预处理器变量的姓名在程序中有必要是仅有的。任何与预处理器变量相匹配的姓名的运用都相关到该预处理器变量。

为防止姓名抵触,预处理器变量常常用全大写字母表明。

预处理器变量有两种状况:已界说,未界说。

#define指示:承受一个姓名并界说该姓名为预处理器变量。

#ifndef指示:检测指定的预处理器变量是否未界说。假如预处理器变量未界说,那么跟在这以后的一切指示都被处理,直到呈现#endif

#ifndef F1_H
#define F1_H
#endif

 留意:头文件应该含有保护符,即便这些头文件不会被其他头文件包括。编写头文件保护符并不困难,并且假如头文件被包括屡次,它能够防止难以了解的编译过错。

 

3.运用自界说的头文件

#include指示承受两种方式:

#include :   规范头文件

#include" ":    非体系头文件,非体系头文件的查找一般开始于源文件地点的途径。

 

4.using声明

格局:using namespace::name;

一旦运用了using声明,咱们就能够直接引证姓名,而不需求再引证该姓名的命名空间。

5.运用规范库类型的类界说

假如在头文件中放置using声明,就相当于在包括该头文件的每个程序中都放置了同一using声明,不管程序是否需求using声明。

留意:一般头文件中应该只界说的确必要的东西。

版权声明
本文来源于网络,版权归原作者所有,其内容与观点不代表凯发娱乐立场。转载文章仅为传播更有价值的信息,如采编人员采编有误或者版权原因,请与我们联系,我们核实后立即修改或删除。

猜您喜欢的文章