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
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利.
欢迎关注我,一起进步!扫描下方二维码即可加我
![](https://images.cnblogs.com/cnblogs_com/FKdelphi/1101510/o_200417075318%E5%8A%A0%E6%88%91QQ.jpg)
![](https://images.cnblogs.com/cnblogs_com/FKdelphi/1101510/o_200417080925%E5%8A%A0%E6%88%91%E5%BE%AE%E4%BF%A1.jpg)
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步