好吧,我想将一些项目转换成DLL。这些都是Visual Studio 2008项目,都是用C++编写的。建立多个项目的DLL的正确方法?
我们有9个不同的项目(所有在Visual Studio 2008下的解决方案)。例如:
RasterTools\
RasterDataset.h
RasterDataset.cpp
Point.h
Point.cpp
<... insert like 50 more cpp files ...>
CoreTools\
Image.h
Image.cpp
CoreUtilities.h
CoreUtilities.cpp
<... insert more ...>
<... insert 7 or more projects ...>
现在事情是某些项目使用其他项目的类。例如Image.h使用Point.h,CoreUtilities.h有一些处理Points的函数。当你有多个交织在一起的项目时,建立一个DLL的正确方法是什么?
基本上我们要具备以下条件:
CoreTools.dll
RasterTools.dll
<other projects.dll>
我知道如何处理__declspec(dllexport)的和dllimport的罚款,通过宏。但是,当我试图构建例如CoreTools.dll我得到的链接器错误,我曾经使用过一个类或没有包含在该项目中的功能。例如,当构建coreTools.dll时,我得到任何Point Class函数的链接器错误。
我该如何处理?
编辑
我想这一点,基本上我注意到,自循环依赖的结果几乎所有的复选框被变灰。 :(