如何在Visual Studio C++ 2012中创建文件夹

Num*_*r42 16 c++ directory project visual-studio-2012

我用C++中的Visual Studio 2012开始了我的第一个更大的项目.我将在文件夹中构建我的源文件,但我找不到可以创建真实文件夹的位置,例如在Windows资源管理器中.所以这是我的问题.

如何在项目中创建真实文件夹?

Han*_*ant 22

IDE有一个命令,"新建文件夹".它甚至出现在Project + Add上下文菜单中,当您使用Tools + Customize查看上下文菜单时,您可以看到这一点.但它隐藏在C++ IDE中.故意地.

重要的是要理解它隐藏的原因.它让您远离麻烦,当您使用资源管理器创建文件夹时,您将遇到的麻烦.

问题在于C++文件的构建方式.它们在编译完成后会生成.obj文件.该obj文件存储在名称为项目设置的目录中.您可以使用Project + Properties,General,Intermediate Directory设置查看它.对于单个.cpp文件,它是C/C++,输出文件,对象文件名.该默认值是$(IntDir)一个宏,告诉编译器使用中间目录设置.使用默认设置,Debug构建的所有.obj文件最终都在Debug子目录中.Release版本的Release子目录.无论.cpp存储在何处.

也许你现在看到熊陷阱了.如果您使用.cpp文件创建子目录,那么当该子目录的.cpp文件的名称与另一个子目录中的另一个.cpp文件相同时,您将遇到麻烦.它们生成一个名称相同的.obj文件.一个覆盖另一个,其中一个是最后编译的.这会产生非常神秘的链接器错误.您将获得重复的符号错误,因为最后构建的.obj文件被链接两次并且丢失了覆盖的.obj文件的符号错误.

所以继续创建一个子目录,但要注意这个问题.如果发生此类冲突,则必须更改.cpp文件的"对象文件名"设置.

  • 有趣的是,通过隐藏可能暴露缺陷的确切特征来掩盖默认构建设置的易于解决的缺点... (5认同)
  • @Alf:它在解决方案资源管理器中称为"显示所有文件",而不是虚拟过滤器等等,您可以显示实际的硬盘文件夹. (4认同)
  • 我记录了您可以从创建文件夹中获得的构建问题,并解释了默认情况下隐藏命令的原因以及如果它爆炸了您会怎么做.显然,努力比每个人都更有帮助"这是一把枪,瞄准你的脚"答案.你不认为这是有帮助的,甚至不值得投票,肯定是你缺乏想象力. (4认同)
  • -1不起作用(对我而言).我同意@rubenvb,它很有趣(以一种悲剧的方式)隐藏了这个功能,以掩盖一个易于解决的"问题".就是它可能,显然没有办法激活(无论什么单词)该菜单项.我试过了.那么,什么是神奇的咒语? (3认同)
  • 谢谢,为了您的详细描述,但在这一刻我正在卸载VS2012并再次下载Qt-Creator,这是程序员为程序员提供的一个很棒的IDE.无需为最小标准功能安装千个插件. (2认同)
  • 叹了口气,他们确实在这里拍摄信使.告诉我这件事是完全没有意义的. (2认同)
  • @Hans:你应该改变你的描述,而不是像DeadMG解释的那样谈论"显示所有文件".我刚刚测试过,它有效(它显示了"添加文件夹"菜单项).那就是答案.;-) (2认同)