0

我正在学习Visual Studio 2015社区。我是一个经验丰富的程序员,但是VS新手,文件表示令我困惑。我创建了一个解决方案,并添加了一个现有的项目。 VS在解决方案资源管理器的一个树级显示所有项目文件(在我的情况下是一个C++项目,所以.c,.cpp.h文件)。相反,如果我用Sublime Text,VS Code,notepad ++之类的东西打开上述项目,我会看到正确的目录结构,因为它位于磁盘驱动器上;正如人们在文件资源管理器/ Finder中看到的那样,或者在终端中看到它ls/dir在Visual Studio中丢失的项目目录结构?

我已经做了我的功课,我张贴之前,并在下面的线程,@Andrey规定:

恐怕是MSVS没有这样的概念,如“目录 结构”。此外,MSVS并不真的需要它,因为它使用平面 项目和层次结构基于项目级别,而不是基于 文件/目录级别。

由于没有这样的事情 - 你不能自动既不自动 也不手动。 MSVS有解决方案文件夹这是完全不同的东西 并没有太多意义表达真实的文件夹作为解决方案 文件夹。

Visual Studio as Code Browser : How to preserve the directory structure?

这是真的吗?文件的安排有很多意义,VS中的平面表示使项目更难理解;目录结构中的文件位置很重要。有没有办法在VS中查看正确的目录结构?

在我的情况下,我正在使用Quickfix,它支持多个版本(4.0,4.1,4.2等)。其中每个都有不同的类和名称相同的文件。

正如你可以从下面的屏幕截图看到,他们都整齐地排列在磁盘上的不同文件夹,但这些文件的VS的表现是非常令人困惑:

enter image description here

enter image description here

+0

您可以在解决方案资源管理器中创建文件夹。这就是我在我的项目中所做的。据说我正在使用'CMake'来生成我的项目。我有'CMake'将解决方案文件夹添加到我的源代码中的大多数文件夹,但它不完全匹配目录结构。 – drescherjm

+0

是否可以导入一个已安排文件排列在目录结构中的大型项目,并在VS中自动创建适当的文件夹? – kmiklas

+0

我不知道非'CMake'方式。 – drescherjm

回答

0

我在下面的线索中找到@Paul Easter给出的答案,对理解这个“怪癖”非常有帮助,这真的是一个“功能”。项目结构的不同概念是工作:

但对于你不想解决方案文件夹的行为类似于 “物理”文件夹中的原因是因为你的解决方案的布局不一定 使用相同的约定为您源代码控制布局。解决方案 文件夹允许您自定义项目的层次结构,以便 可以以任何您喜欢的方式将项目和项目组合在一起,然后 决定您不喜欢它并再次更改它,而不必通过 进入梦魇移动源代码管理项目并且让你的团队中的其他成员感到不满。

Visual Studio Solutions Folder as real Folders

这是一个好主意?我可以看到有些人会喜欢它,因为它允许他们按照自己的意愿安排项目文件。在这一点上,我不喜欢它;我确信部分是因为它对我来说是新的,但也有以下两个原因:
1.在有组织的项目中,目录层次结构不是任意的;首席工程师出于充分的理由以某种方式安排文件。
2.它在VS文件表示和操作系统结构之间增加了一层抽象。我喜欢直接访问我正在处理的文件;在VS系统中,我感到与VS中的底层文件奇怪而又令人沮丧地断开连接。我必须承认这个层有其异常,并会对我造成问题。

相关问题