文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>防止头文件被多次包含的处理方法(转CalmArrow)..

防止头文件被多次包含的处理方法(转CalmArrow)..

时间:2010-05-24  来源:likefreebird

1、为什么会出现多次包含同一个头文件呢?       最常见的原因是许多包含文件自身包含了其他文件,因此可能显式地包含其他文件已经包含的文件。   2、为什么这会成为问题?       因为头文件中的某些语句在一个文件中只能出现一次,比如结构类型的声明。标准C头文件使用#ifndef技术来避免多次包含。示例如下:  

/* things.h */
#ifndef THINGS_H_
        #define THINGS_H_
        ...
#endif

注:这里注意到缩排问题。旧的实现可能不允许使用缩排格式的#define指令。现在的Gcc支持#define缩排,这样在结构上会更加清晰一些。在看.H文件时,还是会看到很多#define没有缩排的。就个人风格而言,我使用缩排格式。

3、如何保证使用的标识符在其他地方没有使用过?

    通常编译器提供商采用如下方法:用文件名作为标识符,并在文件名中使用大写字母。用下划线代替文件名中的句点符号,用下划线(可能两条下划线)作前缀和后缀。

    所以,为了避免跟编译器提供的头文件相冲突,采取的方法是把编译器标识符去掉前缀,也就是前缀不用下划线,其他按照编译器的方法。上面的示例就是采用的这种方法。

相关阅读 更多 +
排行榜 更多 +
辰域智控app

辰域智控app

系统工具 下载
网医联盟app

网医联盟app

运动健身 下载
汇丰汇选App

汇丰汇选App

金融理财 下载