Visual c++ 在项目之间共享源代码[VS2008,C+;+;]
如何在MS Visual Studio 2008中的两个项目之间共享源代码(我使用C++编程)?Visual c++ 在项目之间共享源代码[VS2008,C+;+;],visual-c++,Visual C++,如何在MS Visual Studio 2008中的两个项目之间共享源代码(我使用C++编程)? 在我的例子中,我有主游戏项目的代码,现在我想制作一个使用游戏代码的简单模型编辑器,这样每当我在一个项目中更改/添加一些代码时,它就会在第二个项目中更新。您可以将所需的类移动到一个单独的库项目中,然后从第二个项目中引用它。任何更改都将自动拾取 (我不是C++开发者,但是上面的工作对于C++项目来说,我也假定它也适用于C++项目)一个常用的方法,(你会在开源软件包中看到它),是把所有的头文件捆绑到一个“
在我的例子中,我有主游戏项目的代码,现在我想制作一个使用游戏代码的简单模型编辑器,这样每当我在一个项目中更改/添加一些代码时,它就会在第二个项目中更新。您可以将所需的类移动到一个单独的库项目中,然后从第二个项目中引用它。任何更改都将自动拾取
(我不是C++开发者,但是上面的工作对于C++项目来说,我也假定它也适用于C++项目)
一个常用的方法,(你会在开源软件包中看到它),是把所有的头文件捆绑到一个“包含”文件夹中,并把所有的源都放到一个“源”文件夹中。p> 现在,在任何需要代码的项目中,都可以转到“项目属性->c/c++->常规->附加包含目录”。然后将路径添加到“include”目录。最后,将源/头添加到项目中,现在两个项目引用完全相同的文件,它们位于一个整洁的共享位置您还可以将共享代码构建为静态库或更好的(IMO)DLL。这涉及到创建一个新项目,并在VS2008中学习一点关于链接器的知识,但实际上并不复杂。这还有一个优点(对于DLL),即两个项目不会重新编译相同的代码,而是编译一次并使用两次。基本上有两个选项:
使用DLL方法,共享代码只有一个副本(在DLL中,它将是一个单独的文件),并将根据需要加载。+1对于动态链接,符合“每当我在一个项目中更改/添加一些代码时,它将在第二个项目中更新”的要求。请记住,对于动态链接(DLL),如果STL数据类型为(
std::vector
,std::string
等)在公共接口上使用,则库项目和使用它的项目必须链接到标准库的同一版本(VS2008)。如果存在任何不匹配,程序将以难以处理的方式崩溃。