Visual Studio作为代码浏览器:如何保留目录结构?

6
我已经下载了一个开源的C++项目的源代码,这是一个Linux项目。由于Visual Studio是我最喜欢的IDE,我想使用它来浏览和学习代码。我创建了一个空的C++项目,现在想将源代码添加到“解决方案资源管理器”中。
如何将目录结构添加到“解决方案资源管理器”中?将源代码的根文件夹拖放到解决方案资源管理器中的项目上并不起作用。它只是将文件添加到项目中,但目录结构丢失了。
有没有办法保留目录结构?我不想手动重新创建目录结构。
3个回答

5
如果您将项目文件添加到项目根目录,然后在“解决方案资源管理器”面板中切换到“显示所有文件”(选择项目中的文件),Visual Studio 将停止误导您,并显示真实的目录结构,在此处可以使用右键单击“包含在项目中”将源文件添加到项目中,从而建立浏览/智能感知数据库。

1

很抱歉,MSVS中没有像“目录结构”这样的概念。此外,MSVS实际上也不需要它,因为它使用平面项目,层次结构是基于项目级别而不是文件/目录级别的。

由于没有这样的东西,你既不能自动地也不能手动地拥有它。MSVS有解决方案文件夹,这是完全不同的东西,将真实的文件夹表示为解决方案文件夹并没有多大意义。

如果你只想在MSVS中查看代码而没有构建它的能力,我建议你将所有文件夹中的所有文件添加到项目的相应默认解决方案文件夹(头文件、源文件)中;你还需要收集所有引用的Linux头文件并将它们暴露给MSVS(作为VC++包含目录)。之后,你就可以使用MSVS智能感知和类浏览器了。哦,而Visual Assist更好 :)


1

由于您似乎没有得到任何有用的答案,我想发布这个帖子。我不使用VS,但是两个可能的替代浏览工具(都是免费的、开源的)可以尊重目录结构:

  • Doxygen,它将为您提供基于浏览器的源代码超链接视图。

  • Code::Blocks 是一个C++ IDE(要添加目录和子目录,请使用“递归添加”功能。


2
+1 给 Code::Blocks。它很好用,可以保留目录结构 :) - claws
Downvote。虽然我不反对,并且个人会将“Sublime Text”和“VS Code”添加到此列表中,但我downvote是因为这并没有回答问题。 - kmiklas

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接