刚才遇到个很奇怪的问题,到现在还没想明白,来这里记录一下。在A.h中定义了一个类ClassA,然后在B.h中有使用这个类。使用方式为:
#include "A.h"然后编译的时候居然告诉我不认识ClassA这货。搞的我上下折腾了好久。Class B { void foo(ClassA* A); };
后来居然在B.h中添加了ClassA的声明:
ClassA;
就好了。
到现在还是百思不解。
按理说应该是 #include 的功能比 Declaration 的功能强才对啊。
谁路过这里,顺便帮我解释一下~
Tks~
博主在编译过程中遇到问题,即便在B.h文件中包含了A.h,ClassA仍然未被识别。最终通过在B.h中直接声明ClassA解决了问题。
1025

被折叠的 条评论
为什么被折叠?



