2012-01-07 87 views
1

我正在制作一个游戏,它有不同的“模块”,我现在正在使用VS2010在不同的projets上进行开发。 到目前为止,我的每个项目都有自己的解决方案,并且main.cpp文件用于基本初始化,并对我的项目进行一些快速测试,我经常进行更改。 是否有可能(以及如何)让一个解决方案重新组合几个项目,同时每个项目还有一个“主要”功能,我可以独立于其他项目启动以专门测试一个项目?在VS2010上有几个项目和几个“主要”功能

+0

你在做unamanged C++吧?如果你正在做Visual C++ .NET,请告诉我们。 – 2012-01-07 16:59:34

+0

是的,这是非托管的C++ – lezebulon 2012-01-07 22:15:57

回答

3

这里是我会做:

把所有的项目在一个解决方案。有一些按钮或菜单选项可用于将项目添加到解决方案。这样做的好处是您可以一次编辑多个项目,并且Visual Studio将自动重新编译时需要重建的所有内容。

所有可重用的代码(用于多个可执行文件中的代码)应该划分为编译为DLL的项目。

对于您想要生成的每个可执行文件,您应该有一个编译为可执行文件的项目并引用/链接到它所依赖的DLL。每个可执行项目都有自己的main函数,它在运行exe时运行。

如果你想有一个方法来测试你的DLL而不生成可执行文件,你可以在你的DLL和run it using rundll32中创建一个入口点。这对开发人员测试DLL很有好处,但我永远不会告诉用户使用rundll32

0

构建配置是特定于每个项目的,包括哪个类包含主要方法-IIRC,您可以在项目中定义几个main并通过项目配置定义哪个应该被调用。

+0

类*从不*包含主要方法。我假设你正在谈论设置“入口点”属性?不建议这样做,您将错过CRT在幕后自动完成的所有工作。 – 2012-01-07 15:45:17

+0

那么,我在想C#,这是我最近碰到的那个。没有看到问题的C++标签。无论如何,你可以有一个主项目,而不是每个解决方案 – SJuan76 2012-01-07 15:46:59