社区
C++ 语言
帖子详情
#include
用的是全局命名空间吗?
zhoeu
2008-04-08 07:28:35
1.#include<iostream.h>
2.#include<iostream>
using name space std
我想问下既然第二种用的是std这个命名空间,那么第一种用的是那个空间,是全局命名空间吗?
它们个自的cout又有什么区别?
...全文
115
8
打赏
收藏
#include<iostream.h>用的是全局命名空间吗?
1.#include 2.#include using name space std 我想问下既然第二种用的是std这个命名空间,那么第一种用的是那个空间,是全局命名空间吗? 它们个自的cout又有什么区别?
复制链接
扫一扫
分享
举报
写回复
配置赞助广告
8 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
taodm
2008-04-08
打赏
举报
回复
扔了那个还在#include <iostream.h> 的破书吧,不要用它们来浪费生命了。
ZiSheng
2008-04-08
打赏
举报
回复
还必须知道的是,如果编译器同时支持 <iostream>和<iostream.h>,那头文件名的使用会很微妙。例如,如果使用了#include <iostream>, 得到的是置于名字空间std(见条款28)下的iostream库的元素;如果使用#include <iostream.h>,得到的是置于全局空间的同样的元素。在全局空间获取元素会导致名字冲突,而设计名字空间的初衷正是用来避免这种名字冲突的发生。还有,打字时<iostream>比<iostream.h>少两个字,这也是很多人用它的原因。:)
-->摘自effective C++
pengzhixi
2008-04-08
打赏
举报
回复
发表于:2008-04-08 08:17:202楼 得分:0
iostream.h是标准前的东西,过时了,尽量别用了。
zhoeu
2008-04-08
打赏
举报
回复
谢谢各位热心人的回答!!!我已经明白了...
能举出一两个发生冲突的例子吗? 因为这样我可以更好地理解命名空间的必要性....
hityct1
2008-04-08
打赏
举报
回复
iostream.h是标准前的东西,过时了,尽量别用了。
hurryboylqs
2008-04-08
打赏
举报
回复
#include <iostream.h>
没有名字空间的说法吧?
dbkcpp
2008-04-08
打赏
举报
回复
iostream.h c++标准之前的东西,全局的,
而iostream 是命名空间std下的
ppp_10001
2008-04-08
打赏
举报
回复
#include <iostream.h>是从前的写法
#include <iostream>才是正规的写法
cout没什么区别
只是你不能写成
using name space std
而应写成
using namespace std;
最好写成
using std::cout;
相关推荐
iostream
VS
iostream
.h
iostream
与
iostream
.h二者明显区别即为有无后缀。 在c++中,为与c相区别开以及能够正确使用
命名空间
,规定头文件不使用.h后缀。 当使用"
iostream
.h"时,代表从c中调用库函数,使用的是
全局
命名空间
; 当使用
iostream
时,该头文件中没有定义
全局
命名空间
,必须使用namespace std;这样才能使用cout。 那么何为namespace??? 答...
c++基础1----------------基于c的扩展
1;头文件问题 #
include
“
iostream
”//首先
iostream
与
iostream
.h的区别
iostream
.h是早期c++对c的扩展还是使用的
全局
空间,已经不用了
iostream
是后期没有定义
全局
空间的,因此要使用cout,cin这些标准需要using namespace std才行 c++标准为了和C区别开,也为了正确使用
命名空间
,规定头文件不使用后缀.h。 2;
命名空间
...
using namespace std详解(收集整理)
一
<
iostream
>和<
iostream
.h>是不一样,前者没有后缀,实际上,在你的编译器
include
文件夹里面可以看到,二者是两个文件,打开文件就会发现,里面的代码是不一样的。
后缀为.h的头文件c++标准已经明确提出不支持了,早些的实现将标准库功能定义在
全局
空间里,声明在带.h后缀的头文件里,c++标准为了和C区别开,也为了正确使用
命名空间
,规定头文件不使用后缀.h。
因此,当使用<
iostream
.h>时,相当于在c中调用库函数,使用的是
全局
命名空间
,也就是早
解决
iostream
.h在vc2008下不能被
include
和格式不一样 前者没有后缀,实际上,在你的编译器
include
文件夹里面可以看到,二者是两个文件,打开文件就会发现,里面的代码是不一样的。 后缀为.h的头文件c++标准已经明确提出不支持了,早些的实现将标准库功能定义在
全局
空间里,声明在带.h后缀的头文件里,c++标准为了和C区别开,也为了正确使用
命名空间
,规定头文件不使用后缀.h。 因 此,当使用时,相当于在c中调用库函数,使用的是
全局
命名空间
#
include
iostream
和 #
include
iostream
.h 的区别
#
include
和 #
include
有什么区别? 表示你使用的是标准
命名空间
,也就是在程序开始应该有这么一句话 using namespace std ; 这是遵循c++标准的 相反,"
iostream
.h" 则没有遵循c++标准 ,这是老式的命名方式 ,延承自C语言。 这是网上摘抄的一相关解释: 其实没有 这样的东西
发帖
C++ 语言
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
6.3w+
社区成员
25.0w+
社区内容
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
帖子事件
创建了帖子
2008-04-08 07:28
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下