免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 3716 | 回复: 10

[C] 一个头文件的包含问题 [复制链接]

论坛徽章:
0
发表于 2013-07-09 20:19 |显示全部楼层
假设有如下两个头文件a.h b.h
a.h中 #include "b.h"
b.h中 #include "a.h"
这样会出现什么问题吗?

论坛徽章:
4
水瓶座
日期:2013-09-06 12:27:30摩羯座
日期:2013-09-28 14:07:46处女座
日期:2013-10-24 14:25:01酉鸡
日期:2014-04-07 11:54:15
发表于 2013-07-10 10:44 |显示全部楼层
互相依赖, 是不可以的, 永远展不开.

论坛徽章:
0
发表于 2013-07-10 10:49 |显示全部楼层
一般头文件都会有 防止多次展开的定义, 现在的编译器也有展开深度的限制

论坛徽章:
1
2015年辞旧岁徽章
日期:2015-03-03 16:54:15
发表于 2013-07-10 10:55 |显示全部楼层
包含时候使用宏定义,另外如果这种循环包含的话需要做预定义 ……

论坛徽章:
2
程序设计版块每日发帖之星
日期:2015-06-17 22:20:00每日论坛发贴之星
日期:2015-06-17 22:20:00
发表于 2013-07-10 11:00 |显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽

论坛徽章:
10
戌狗
日期:2013-10-17 09:43:0215-16赛季CBA联赛之广东
日期:2018-02-05 11:22:1215-16赛季CBA联赛之八一
日期:2016-07-04 12:26:1815-16赛季CBA联赛之青岛
日期:2016-06-08 11:15:4115-16赛季CBA联赛之辽宁
日期:2016-04-05 10:10:1415-16赛季CBA联赛之辽宁
日期:2016-03-11 11:11:48酉鸡
日期:2014-12-18 14:35:48狮子座
日期:2014-02-20 10:14:07寅虎
日期:2013-12-02 13:48:2915-16赛季CBA联赛之广夏
日期:2018-03-21 08:51:10
发表于 2013-07-10 11:07 |显示全部楼层
通常都要用
#ifndef _XXX_H_
#define _XXX_H_
.....
#endif

论坛徽章:
0
发表于 2013-07-10 12:17 |显示全部楼层
谢谢楼上的各位,那如果我在每个头文件中都定义了防止重复展开的宏,那么互相包含还会有问题吗?

论坛徽章:
2
程序设计版块每日发帖之星
日期:2015-06-17 22:20:00每日论坛发贴之星
日期:2015-06-17 22:20:00
发表于 2013-07-10 12:49 |显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽

论坛徽章:
0
发表于 2013-07-10 14:02 |显示全部楼层
为什么要相互引用? 如果是定义完全可以独立文件来定义,如果是类的头文件使用 在a中 class b; 然后在cpp中引用b.h就可以了啊.

论坛徽章:
0
发表于 2013-07-10 19:51 |显示全部楼层
出现这种情况,那么应该有一个common的c.h
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP