"using namespace std;"这句话在vc2005里主要含义是什么

porhhome 2008-02-24 05:55:20
在vc6.0中用不到"using namespace std;",而在vc2005里调用inlude <iostream>必须加上这句话。这是为什么呢?
...全文
259 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
Edwardyewei 2008-03-05
  • 打赏
  • 举报
回复
std是一个名字空间,如果不加的话,也可以,不过后面可就麻烦了,
像cin要写为std::cin;
zhoufuguo8802 2008-03-04
  • 打赏
  • 举报
回复
声明命名的规则是标准命名规则,而且是在那个命名空间中。
  • 打赏
  • 举报
回复
std 是命名空间名 可以猜想到std是 standar的简写
所有标准c++支持的函数都在这个命名空间中,当用户使用
include<iostream>
时只是加载了函数的声明
加上
using namespace std;
后才能让编译器找到函数的定义
你也可以建立自己的命名空间

namespace myspace
{
//////
};

不建议全局范围内使用
using namespace std;

因为创建命名空间的目的是为了使变量和函数不重名 要是在文件开头使用
using namespace std;
的话相当于把原来防止命名重复的机制又去掉了

你可以在末各函数体内部调用函数时临时加上
using namespace std;
这样不会影响全局

如果不想用 using可以在调用时加上std::
例如 std::cout<<"haha";
天亮后说晚安 2008-03-04
  • 打赏
  • 举报
回复
名字空间域
hemu1190 2008-02-25
  • 打赏
  • 举报
回复
学习
porhhome 2008-02-24
  • 打赏
  • 举报
回复
谢谢楼上各位大哥大姐,看了以后很管用
菠菜Hello_World 2008-02-24
  • 打赏
  • 举报
回复
给你举个例子,如果不写using namespace std;如果用到cout时,就要写std::cout。
希望能帮到你
jieao111 2008-02-24
  • 打赏
  • 举报
回复
lz应该看点名字空间域的知识
effective_person 2008-02-24
  • 打赏
  • 举报
回复
如果只写inlude <iostream>则必须加using namespace std;不管在vc6.0还是在vs2005中。
vc6.0 还可以写成inlude <iostream.h> 就不需要加using namespace std;
robertzhang10 2008-02-24
  • 打赏
  • 举报
回复
vc 6 出来是98年,和标准C++有很大差异。 C++新标准是03年。
iostream头文件里面的所有东西都在std名空间里面,当然要加using namespace std
ryfdizuo 2008-02-24
  • 打赏
  • 举报
回复
vc6.0里面可以使用#include <iostream.h> 或者 #include <iostream> using namespace std;
vs2005里面不可以的,只能够#include <iostream> using namespace std;
那句话就是申明程序在名字空间std中,
星羽 2008-02-24
  • 打赏
  • 举报
回复
使用std名字空间,这个是c++标准库的名字空间,关于什么是名字空间你可以google

http://dev.csdn.net/article/49/49688.shtm

64,637

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧