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中就可以了。 

posted on 2020-12-25 16:53  疯狂delphi  阅读(817)  评论(0编辑  收藏  举报

导航