注册 登录
编程论坛 C++教室

为什么程序前面要加using namespace std?

♂twincle 发布于 2004-08-07 15:46, 3045 次点击

书上说得不太明白~~请大侠们详细讲解using、 namespace和std分别都是什么意思~~写这句话达目的是什么?谢谢~~

16 回复
#2
kai2004-08-07 17:59

如果我仅仅告诉你相关的字面解释,我想你还是不能明白的。

using namespce : 使用命名空间

std: 标准

关于一些基础概念的问题,我觉得你还是自己看书的好。我建议你看一下 C++ Primer Plus (Fourth Edition) Autor: Stephen Prata

#3
kuangjingbo2004-08-07 18:03

使用std命名空间

#4
♂twincle2004-08-07 18:20

命什么名?

#5
C++大粉丝2004-08-10 21:59

就是用C++标准库的意思,std(standard template library)

#6
C++大粉丝2004-08-10 22:01

using 就是C++的语法,代表要使用某个名字空间(namespace)

名字空间是C++的新特性,为了防止大程序之间的定义冲突,其实就是把定义的名字管理起来.

#7
fastmouse2004-08-10 23:24
re,楼上的说的挺清楚了
#8
fxy8292008-09-22 22:28
讲的很透彻
#9
守鹤2008-09-22 22:35
命名就是由用户命名的作用域,用来解决同名冲突的问题
6楼解释的很清楚了
#10
zhangbowen06182008-09-22 22:36
使用命名空间........
#11
jiarujian2008-09-22 22:36
不明白啊!!!!!!!!
#12
beyondlwm2008-09-27 16:09
这样说
有个函数A,里面有一个变量叫value1
N久以后,你扩充函数A,但是你忘记了你曾经写过一个value1的变量,你就又写了一次
这样就会导致错误(重复定义)
当然,对于个人编码而言,能轻易知道错误
但是如果是大规模作业,别人扩充你的代码时很难知道你在代码里到底写了什么
所以在变量前面加一个“姓”
比如,它叫std::value1,我叫std1::value1
这样就OK了,如果你问,要是姓氏都一样怎么办
那就是人品问题了:)
#13
jiarujian2008-09-28 13:27
回复 12# beyondlwm 的帖子
谢谢!明白了!呵呵!我是新人,理解起来有点困难!
#14
shaoda1692008-09-29 12:05
回复 12# beyondlwm 的帖子
见识了,呵呵 好人啊
#15
zzt_4282008-09-30 10:39
std 是名字空间.你程序中使用的cout,cin ,endl 等等都包含在这个名字空间中,如果不包含,编译是不允许通过的.
或则使用 using std::cout;using std::cin; 用到哪个,就导入哪个.
#16
辛夷2008-10-10 23:59
和楼主一样,我也不明白,不过听说#include<iostream> using namespace std;相当于#include<iostream.h>只是听说,不知道是不是真的。
#17
choco10242008-10-11 16:49
百度一下不就出来了?
1