头文件

由于嵌套包含文件的原因一个头文件可能
会被多次包含在一个源文件中条件指示符可防止这种头文件的重复处理例如
#ifndef BOOKSTORE_H
#define BOOKSTORE_H
/* Bookstore.h 的内容 */
#endif
条件指示符#ifndef 检查BOOKSTORE_H 在前面是否已经被定义这里BOOKSTORE_H
是一个预编译器常量习惯上预编译器常量往往被写成大写字母如果BOOKSTORE_H
在前面没有被定义则条件指示符的值为真于是从#ifndef 到#endif 之间的所有语句都被包
含进来进行处理相反如果#ifndef 指示符的值为假则它与#endif 指示符之间的行将被忽

为了保证头文件只被处理一次把如下#define 指示符
#define BOOKSTORE_H
放在#ifndef 后面这样在头文件的内容第一次被处理时BOOKSTORE_H 将被定义
从而防止了在程序文本文件中以后#ifndef 指示符的值为真
只要不存在两个必须包含的头文件要检查一个同名的预处理器常量这样的情形这
个策略就能够很好地运作

posted on 2010-04-20 17:18  王六石  阅读(229)  评论(0编辑  收藏  举报

导航