0

我正在尝试重构 DLL 来控制 OPOS 设备。在设备被认领并启用后,它会启动一个线程来不断检查从 OPOS 设备接收到的数据。我在中声明方法OposReader.h

但我认为将所述方法拉出并将其移至助手会是一个更好的主意。所以我创建了一个类ReaderThreadHelper.h把它放在......但在线程中我必须调整 OposReader 中的值。

因此,在我调用的 OposReader#include ReaderThreadHelper.h中,ReaderThreadHelper.h我必须做一个#include OposReader.h......这开始了循环引用的问题......而且我对 C++ 太陌生了,不知道如何解决它。

我什至应该从一开始就这样做吗?有没有更合适的方法来做到这一点?

4

1 回答 1

1

简短的回答:使用前向声明并仅将标题包含到.cpp文件中。

详细解释在这里:Resolve circular dependencies in C++

于 2012-09-12T16:53:33.583 回答