我正在开发一个项目,试图模块化一些组件。其中之一是开窗。我试图将输入回传给主EXE,而我通过一个用户界面函数来执行此操作,该函数又调用主输入系统类中的主要方法。后一类太复杂了,甚至没有一个头可用于两个系统(取决于很多类)。DLL如何访问EXE类?
反正,所以实际的问题是我无法访问输入接口类中的任何方法!
class WINDOW_EXPORT_CLASS GameWindow {
private:
InputInterface *input;
virtual void SetInputPointer(InputInterface *);
...
};
这是在我的DLL/SO文件中,我可以访问所有这些。但我无法访问输入的成员。 Bash崩溃与符号查找错误:
./bin/window.so: undefined symbol: _ZN14InputInterface16SetMouseInWindowEb
有没有人有任何想法如何解决这个问题?我的输入接口类标题包含在两侧。这个类包含void函数,并且不会被导出(我不知道它是可以的,如果需要导出,请告诉我怎么做?)提前致谢!
你可能需要一个插件接口。 –
其他用户,1201ProgramAlarm,不得不写答案,但我真的不知道你的意思,由和,InputInterface的头是可执行文件,它的头中的可执行文件和DLL都被引用。使功能虚拟解决了问题。 –