我通常使用C#。在C#中我可以有一个层次结构,它们互相引用。
我试图在VC ++中做同样的事,但我不知道如何。我一般都没有很多C ++经验。
我有:
我尝试添加TestProject1作为TestProject2的参考:
TestProject1上的右侧Clikc->属性 - >共同属性 - >框架和参考 - >添加新参考 - >选择TestProject2
但是这会导致错误,因为TestProject2不是作为lib构建的。
从我所看到的,只生成一个obj文件列表。
在TestProject1中引用TestProject2的正确方法是什么,以便我可以使用它的类?
更新:我是如何解决的
我按照SOReader说明解决了这些问题,但我以不同的方式添加了lib:
答案 0 :(得分:1)
这并不像在C#中那么容易。
如果要将其简单地包含在另一个项目中,则必须将TestProject1
构建为静态库。在此之后,您将转到依赖项目属性并将lib
文件添加到链接器和头文件夹以进行标头查找。
假设Dll
的根文件夹中包含.h
文件(实际上不应该有),您只需在Additional Include Directories中添加一个条目,指向Dll根文件夹所在的位置。
现在您可以在主应用程序中的cpp文件中编写#include <theheaderfile.h>
以引用导出的功能。
以下是msdn中可能有用的其他几个位置:import/export,static libraries,hpp vs h