一个头文件A.h, 放在 B.cpp里面include没有关问题,但是放在B.h里面Include就一堆错?why

一个头文件A.h, 放在 B.cpp里面include没问题,但是放在B.h里面Include就一堆错?why?
一个头文件A.h,   放在   B.cpp里面include没问题,但是放在B.h里面Include就一堆错?

出的错五花八门,有什么iso的,Istream的   Ostream的,好多啊!!!


求助!!!

------解决方案--------------------
注意Include的顺序,以及有没有代码重复Include B.h
------解决方案--------------------
把程序发来瞧瞧先?
------解决方案--------------------
哈哈,include的顺序问题。
你就放在A.cpp 里面好了。
------解决方案--------------------
是重复包含的问题吧.
------解决方案--------------------
感觉像是没有正确的重载 < < 和 > >
------解决方案--------------------
重复包含 ?

如果 b.h 中无需A.h的声明内容,
那么就不要在 B.h 中包含吧 ...
------解决方案--------------------
重复包含,可能没有定义重复包含保护~
------解决方案--------------------
推荐使用预编译命令
就不会出现这些问题了
------解决方案--------------------
可能是重复包含,这样定义A.h头文件:
#ifndef A_H
#define A_H

....//头文件内容

#endif

这样定义可以避免头文件重复包含。
一般头文件也应该这样定义。