Visual C++ 中 DLL 的 DLL 导出和接口

DLL export and interface for DLL in Visual C++

本文关键字:DLL 接口 C++ Visual      更新时间:2023-10-16

我有两个Visual C++项目(在Visual Studio 2008环境中),其中一个必须使用其他类和功能。所以我发现这是可以理解的,但我有一点需要澄清。

因此,假设第一个项目ProjA,第二个项目ProjBProjB需要使用类和函数。正如我在开始时所说的那样ProjA。但是这两个项目之间必须只有一个接口,这是一个简单的对象,如下所示:

class A
{
public:
   void write(data);
   void read (data);
}

所以这一定是ProjB必须使用的接口类,但是在调用write函数之后ProjA,在单独的 cpp 文件和其他类和函数中完成了很多操作......

所以我的问题是我是否需要仅将dllexport功能用于class A,还是必须在ProjA内部使用的所有其他类和函数定义中使用它们?以及如何编写接口文件?

确实谢谢...

仅对A类使用dllexport,前提是data参数的类型不是 ProjA 中定义的另一个类。

当一个类被"导出"时,该类的所有代码保留在它的DLL中。如果 ProjB 从 ProjA 类中不知道其他任何内容,它应该可以工作。

确保两个 Dll 保持同步(构建 otions、C 运行时类型...