2

几个月前,我安装了 Visual Studio 2012 Ultimate。由于一些学校项目,我不得不安装 Visual C++ 2010 Express Edition。现在,当我尝试在 Visual C++ 2010 中编译项目时,我无法包含任何常见的标头,例如<iostream><cmath>等。编译器搜索的文件夹是 C:\Program Files\Microsoft SDKs\Windows\v7.0A\Include。

但所有这些包含文件都位于 C:\Program Files\Microsoft Visual Studio 11.0\VC\include 中。

有人可以解释一下这两条路径的含义(有什么区别)以及如何解决#include <iostream>问题。

4

2 回答 2

2

根据您分享的详细信息,我了解到 /Microsoft Visual Studio 10.0/VC/include 目录不包含标准头文件。

VS 2010 中的包含目录 $(VCInstallDir) 可能指向 /Microsoft Visual Studio 10.0/VC。由于包含文件夹是空的,因此您无法编译代码。

据我所知,这个问题发生在人们安装 VS2012 和 2010 之后。我猜注册表会出现一些问题,并且 VS2010 安装程序没有正确安装头文件。

您可能有 4 个选项:

  1. 使用 Visual Studio 工具->Visual Studio 命令提示符,更改 $(VCInstallDir) 使其指向“/Visual Studio 11.0/include”

  2. 如果您知道某人的 VS2010(与您的版本相同)正常工作,请将他们的“/VC/include”目录复制到您的目录。

  3. 卸载 VS2012 和 VS2010(完全卸载,如下所述:http: //archive.msdn.microsoft.com/vs2010uninstall)清理注册表并再次安装 VS2010。

  4. 进行全新的 Windows 安装,然后安装 VS2010。

可悲的是,在我的情况下,只有选项 4 有效。选项 2 也有效,但我在另一个项目中遇到了其他问题。祝你好运。

于 2013-05-03T14:51:51.227 回答
0

我遇到了同样的问题。在虚拟机上安装全新的 Windows 和 VC++ 2010 Express 解决了这个问题。

于 2013-10-10T12:43:50.007 回答