【问题标题】:How to organize a C ++ large project in Visual Studio如何在 Visual Studio 中组织 C++ 大型项目
【发布时间】:2019-05-27 03:26:30
【问题描述】:

我想将我的源代码分成文件夹,以便通过将文件分组到目录中来更好地组织。

通常有很多 .h 和 .cpp 文件,我通常会分开文件夹。我一直使用 netbeans,但最近我决定测试 Visual Studio。

在开始编写代码时(小东西,按照 SDL 中创建游戏的教程),我开始在文件夹中组织源代码。在 Visual Studio 中,当我使用 C++ 时,我看到了添加过滤器、组织文件结构的选项,但没有看到添加文件夹的选项。

我可以将代码组织在视觉上看起来像文件夹结构的地方,但是当我去检查文件是否一团糟时,它们都在程序的根目录中混淆了。菜单选项只允许我添加过滤器:

显然它是有条理的,但只是在视觉上,代码都保留在同一个地方。

我想知道在visual studio内部是否有办法将这些过滤器转换为文件夹,或者如何通过visual studio添加文件夹,因为我最终创建了文件夹并手动重新组织。

并不是说我通常有同名的文件,但例如在那种环境中这是不可能的。除此之外,我认为如果您寻找某些东西,或者将来需要切换 IDE 会变得非常混乱,因为我相信这个逻辑组织不会在另一个 IDE(例如 Eclipse、Netbeans 等)中重用。

【问题讨论】:

  • 对我来说(项目有数百个源文件)在我管理大量代码的过程中,我将项目划分为多个库。在这些库中,我细分为解决方案文件夹。话虽如此,我使用CMake 来生成项目,所以我不会直接在 IDE 中创建解决方案文件夹。
  • 请注意,即使您有多个文件夹,您也应该(“不能”)拥有具有相同名称和扩展名的文件。在构建您的解决方案时创建的.obj-文件将被最后一个同名文件覆盖,并且您将收到链接器错误(例如,请参阅this explanation)。

标签: c++ visual-studio design-patterns projects-and-solutions


【解决方案1】:

正如您所说的过滤器是纯粹的视觉事物,您可以使用文件资源管理器将文件组织到实际目录中,或者当您向项目添加新项目时,您可以指定将创建文件的路径。解决方案资源管理器本身不提供在磁盘上移动文件的方法。

请注意,如果您实际使用多个目录,则需要在#include 指令中包含部分路径,或者更改项目包含搜索路径,以便找到该文件。

【讨论】:

    猜你喜欢
    • 2011-07-20
    • 1970-01-01
    • 1970-01-01
    • 2012-04-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-06-26
    • 2010-10-17
    相关资源
    最近更新 更多