我有一个问题要问。在同一个解决方案下,项目之间是否可以相互引用?
例如,项目A和B都有自己的导出函数。项目A引用项目B,项目B引用项目A。两个项目都需要访问彼此的导出函数。
从技术上讲,这是否可能?
我有一个问题要问。在同一个解决方案下,项目之间是否可以相互引用?
例如,项目A和B都有自己的导出函数。项目A引用项目B,项目B引用项目A。两个项目都需要访问彼此的导出函数。
从技术上讲,这是否可能?
从技术上讲,这是可能的,但它存在问题。
当您构建2个DLL时,DLL A需要B的lib文件,而B需要A的lib文件。
我们是这样做的:第一个项目A不依赖于B,只有B依赖于A。A导出了2个函数funcA1和funcA2,当我们可以构建DLL A时,我们可以构建B并生成B.lib。由于我们有了B.lib文件,因此我们可以让A依赖于B并添加代码来使用B导出的函数。这就是我在真实项目中创建循环引用的方式。
问题是:当您清除所有lib文件并进行重建时,您将无法完成。我不喜欢这种方法,我们应该将相关函数放入另一个DLL中,而不是创建循环引用。