关于C语言中头文件重复包含问题
来源:互联网 发布:链式编程 编辑:程序博客网 时间:2024/05/22 07:00
由于现在工程的代码量比较大,多个文件相互进行#include包含头文件时,很容易将头文件重复包含,当重复包含头文件时,预处理器会重复读入整个头文件,且重复使用头文件,使得编译不通过。
#ifndef _HEADERNAME_H#define _HEADERNAME_H 1/*** All the stuff that you want in the header file*/#endif
那么,多重包含的危险就被消除了。当头文件第1次被包含时,它被正确处理,符号_HEADERNAME_H被定义为1.如果头文件再次被包含,通过条件编译,它的所有内容被忽略。符号_HEADERNAME_H按照被包含文件的文件名进行取名,以避免由于其它头文件使用相同的符号引起冲突。
注意前一个例子中的定义也可以写作
#define _HEADERNAME_H
它的效果完全一样。尽管它现在的是一个空字符串而不是“1”,但这个符号仍被定义。
但是,你必须记住预处理器仍将读入整个头文件,即使这个文件的内容会被忽略,这将拖慢编译速度。
1 0
- 关于C语言中头文件重复包含问题
- c语言中关于头文件重复包含
- c语言中关于头文件重复包含
- C语言头文件避免重复包含
- C语言头文件避免重复包含
- 避免C语言头文件重复包含
- C语言头文件避免重复包含
- [C++]头文件重复包含问题
- C语言中头文件相互包含问题
- c语言头文件包含问题
- C语言之头文件包含问题
- C语言之头文件包含问题
- 关于C++/C中防止头文件的重复包含的解决办法
- 关于C++/C中防止头文件的重复包含的解决办法 (转)
- 头文件重复包含问题
- C/C++——头文件重复包含问题
- 关于c中防止头文件重复包含的2个方法
- 关于头文件重复包含以及函数重定义问题
- Ubuntu下配置tomcat、mysql
- 欢迎使用CSDN-markdown编辑器
- ModelDriven方法传值注意
- 关于golang中map的key的类型
- rails安装:gem更换成淘宝源
- 关于C语言中头文件重复包含问题
- 复选框点击事件但是不选中问题解决
- 解析xml(1) Dom解析(自用)
- jQuery-ui插件datepicker的参数使用详解
- Nginx配置文件(nginx.conf)配置详解
- Elasticsearch集群的脑裂
- 飛飛(七十四)阅读 STL中的简单容器和迭代器
- 长期更新 名词解析
- JavaScript案例学习1