我用MFC扩展DLL导出了一个类(WorkerThread),并另外创建两个MFC 扩展DLL(类名:GetPacket、BasicAnalyzer),都分别使用WorkerThread类作为GetPacket与BasicAnalyzer的成员,并在主程序中调用两个DLL(即使用GetPacket类、BasicAnalyzer类),主程序先调用GetPacket类成员函数时变量值正常,但调用BasicAnalyzer类成员函数的WorkerThread类函数时,类成员变量值不正常,请问是何原因?谢谢!
不同意,公用的类封装到较低层的dll里,这种情况很常见,
至于为何第二个dll的调用有问题,可能跟WorkerThread类的实例创建点有关,建议不要用对象做
成员变量而改用WorkerThread类型的指针,在BasicAnalyzer类的构造函数中new WorkerThread,
或者由主程序new WorkerThread,并通过BasicAnalyzer类提供的接口将指针传给它