在
c++ 中是否有可能包含 2 个 DLL,因为它们中的每一个都使用彼此的类(嗯,这是我的计划),这可能吗?
是的,这是可能的。只有您需要将这些 dll 编译为多步骤过程。若要链接 dll,需要来自其他 dll 的库文件。这意味着您需要:
- 创建 DLL1 的存根实现。这将为 DLL1 生成一个 .lib 文件。
- 将 DLL2 与存根 .lib pf DLL1 链接。
- 将 DLL1 与 DLL2 的真实 .lib 链接。
- 将 DLL2 与 DLL1 的实际库重新链接。
另请注意,DLL 通常具有 C 接口。您可以导出类,但要准备好为所用编译器的每个版本设置一组 dll。