#include 问题

cmkyec 2009-05-06 04:52:13
在test1.h头文件中包含

#include "aa.h"
#include "bb.h"
#include "cc.h"

在test2.h头文件中 #include "test1.h",可是我想 "aa.h"仅包含于test1.h中,即test2.h中只包含
"bb.h" "cc.h",这样的想法可以实现吗?
...全文
135 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
cmkyec 2009-05-06
  • 打赏
  • 举报
回复
6楼的方法在我的程序中可以实现的,非常感谢大家的热心帮助。
cnnbjwq 2009-05-06
  • 打赏
  • 举报
回复
不可以的吧,这样做的话不是头文件重复包含了嘛,运行编译时要出错的啊
lpf000 2009-05-06
  • 打赏
  • 举报
回复
你要实现那个干嘛。。。
yaoqian156 2009-05-06
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 xf_pan 的回复:]
可以,,但这种做法不是好的解决方案。。把你要实现的重新考虑下巴。。
做法如下:
test2.h头包含 #define _TEST2_H

test1.h头
#ifndef _TEST2_H
#include "aa.h"
.....

#endif


[/Quote]

同意这位。在实现方式复杂化得时候,你应该考虑换一种方式。

Qlaiaqu 2009-05-06
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 xf_pan 的回复:]
可以,,但这种做法不是好的解决方案。。把你要实现的重新考虑下巴。。
做法如下:
test2.h头包含 #define _TEST2_H

test1.h头
#ifndef _TEST2_H
#include "aa.h"
.....

#endif
[/Quote]
不行的
_TEST2_H是全局的,这样在test1.h中
#include "aa.h" 这行会是灰色的,也就代表test1也不能看见它,暂时不知道有没有好的方法
Linux研究小卒 2009-05-06
  • 打赏
  • 举报
回复
楼上的是个好主意!赞!
xf_pan 2009-05-06
  • 打赏
  • 举报
回复
可以,,但这种做法不是好的解决方案。。把你要实现的重新考虑下巴。。
做法如下:
test2.h头包含 #define _TEST2_H

test1.h头
#ifndef _TEST2_H
#include "aa.h"
.....

#endif

zhan1094 2009-05-06
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 omycle 的回复:]
好像不行吧,如果你不像重复引用头文件倒是可以的:
#ifndef _TEST_H_INLCUDED
#define _TEST_H_INLCUDED

...

#endif

如果用vc:
//test.h
#progma once
[/Quote]
这样可以
victoryczy 2009-05-06
  • 打赏
  • 举报
回复
zhanghuayi_xiyou 2009-05-06
  • 打赏
  • 举报
回复
可以使用预编译#ifndef #define #endif来限制
Linux研究小卒 2009-05-06
  • 打赏
  • 举报
回复
好像不行吧,如果你不像重复引用头文件倒是可以的:
#ifndef _TEST_H_INLCUDED
#define _TEST_H_INLCUDED

...

#endif

如果用vc:
//test.h
#progma once
acdbxzyw 2009-05-06
  • 打赏
  • 举报
回复
应该可以
忘了。

65,210

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧