编程论坛
注册
登录
编程论坛
→
C++教室
using namespace std
hcjiuaihcl
发布于 2009-08-12 16:18, 659 次点击
在C++的程序代码中好像都有using namespace std这个句子,我想问一下这是干什么用的?
3 回复
#2
小轩轩
2009-08-12 17:39
#include 等同于:#include using namespace std;具体点: std::cout , std::endl; (在没有.h 或者 using namespace std 情况下)cout , endl (在有.h 或者 using namespace std) 说白了,其实就是一个空间名字
#3
zqsf
2009-08-12 17:54
namespace是名字空间,这是C++与C的不同之处,在C中,所有函数和变量并没有分开放置,这样很容易发生变量名相同的情况,而C++中引入名字空间,顾名思义,就是将一部分名字放在一个空间里,这样,即使在空间外有和空间里的变量重名的变量也没有关系,那么我们可以自己定义名字空间,将变量分开存放,这样可以有组织的放置变量和函数而不用怕名字冲突。当我们使用某个空间里的某个变量时,可以在变量前指明它所属的名字空间(如namespace::var_name),也可以干脆把整个名字空间指明在程序中可见(如using namespace space_name),在C++中有个全局名字空间,这个空间就像程序的老家,程序可以自由访问里面的变量或者函数,但是这里面没东西,而我们需要的cout、cin等等输入输出流或者其他的标准函数都不在这个全局名字空间里,那么就需要我们把它们所在的名字空间(即std)包含在这个全局名字空间里,这样程序才能找到这些东西。如果想把std整个名字空间都包含在全局名字空间里,就using namespace std;如果只是使用其中的某部分函数或其他的东西,那么可以std::cout、std::cin等等。
#4
qazpp
2009-08-12 22:57
C++中引入名字空间,C中就没有!
1