error C2143: 语法错误 : 缺少“;”(在“*”的前面)
error C2143: 语法错误 : 缺少“;”(在“*”的前面)
a.h 定义一个类
b.h 定义一个类
b.h引入a文件
a.h再引入b.h后,再声明一个b.h中的类指针时 就会提示C2143。
处理方法:
在a.cpp中引入b.h
在a.h最上方写出“class xxxxxx”b.h中的类
再a.h中声明b.h中的类就没问题了(在此再比视一次C++)。
问题原因:
这就是多文件相互引用后,编译发生的问题。问题是这么个问题,但这种处理方法真心不方便,有没有更好的方法?
delphi中也有这个问题,不过处理方法比C++的简单点。b文件引入时写在上方的uses里,a文件引入时写在implementation下方的uses中就可以了。
作者:疯狂Delphi
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利.
欢迎关注我,一起进步!扫描下方二维码即可加我