设为首页 加入收藏

TOP

关于“error C2871: 'std' : does not exist or is not a namespace”和“Error spawning cl.exe“的解决办法
2015-11-21 01:55:53 来源: 作者: 【 】 浏览:4
Tags:关于 error C2871: ' std' does not exist namespace Error spawning cl.exe 解决 办法
今天在使用VC6运行程序的时候出现了几个新的error,以前没有碰到,总结一下,希望对其他同学有帮助:
?
1.Error spawning cl.exe?
?
错误分析:
?
这个error一般在点击“Compile”或者“Build”后出现的:“Compiling... ,Error spawning cl.exe”,“cl.exe”是VC使用的真正的编译器(编译程序),其路径在“VC根目录\VC98\Bin”下面,所以出现这个错误实际上是因为cl.exe路径设置出错造成的,这个默认路径是在程序安装好之后自动设置的,是没有问题的,但是有时候在安装一些软件的时候会自动修改这个路径值,导致运行的 vc的时候找不到这个路径。
?
解决办法:
?
打开vc界面点击VC“TOOLS(工具)”—>“Option(选择)” —>“Directories(目录)”重新设置“Excutable Fils、Include Files、Library Files、Source Files”的路径。
如果你是按照初始路径安装vc6.0的,路径应为:?
executatble files: ?
C:\Program Files\Microsoft Visual Studio\Common\MSDev98\Bin ?
C:\Program Files\Microsoft Visual Studio\VC98\BIN ?
C:\Program Files\Microsoft Visual Studio\Common\TOOLS ?
C:\Program Files\Microsoft Visual Studio\Common\TOOLS\WINNT ?
?
include files: ?
C:\Program Files\Microsoft Visual Studio\VC98\INCLUDE ?
C:\Program Files\Microsoft Visual Studio\VC98\MFC\INCLUDE ?
C:\Program Files\Microsoft Visual Studio\VC98\ATL\INCLUDE ?
?
library files: ?
C:\Program Files\Microsoft Visual Studio\VC98\LIB ?
C:\Program Files\Microsoft Visual Studio\VC98\MFC\LIB ?
?
source files: ?
?
C:\Program Files\Microsoft Visual Studio\VC98\MFC\SRC ?
C:\Program Files\Microsoft Visual Studio\VC98\MFC\INCLUDE ?
C:\Program Files\Microsoft Visual Studio\VC98\ATL\INCLUDE ?
C:\Program Files\Microsoft Visual Studio\VC98\CRT\SRC ?
?
如果你装在其他盘里,则仿照其路径变通就行。关键是microsoft visual studio\ 后面的东西要相同。
?
2.error C2871: 'std' : does not exist or is not a namespace
?
当我在vc6中运行程序:
#include
using namespace std;
int main(){
? ? cout<<"hello"<
? ? return 0;
}
出现了error C2871: 'std' : does not exist or is not a namespace这个错误!
?
错误分析:
?
C++有两个不同版本的头文件:。引入namespace这个概念以前编译器用的是#include ,而引入namespace的概念以后引用std名字空间的头文件则变成了是比较老的C++的头文件的版本,而namespace是98年才被加入C++标准的,所以里面是没有std这么个命名空间的,当使用 时,相当于在c中调用库函数,使用的是全局命名空间,也就是早期的c++实现。头文件则没有定义全局命名空间,使用时必须使用namespace std才能正确使用cout。
?
vc6.0支持这个两个版本. 不过现在都用了 ?
?
解决办法:
?
#include
using namespace std;
或者是?
#include 即可。
?
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇C++ - "array<>".. 下一篇HDU 4771 Stealing Harry Potter&..

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: