请问 #include 和 #include 有什么区别

xp2004 2004-06-17 09:43:23
为何我在vc6.0 Console Application 中 #include <iosteam.h>
后using namespace std;报error C2871:'std' : does not exist or is not a namespace而#include <iostream> 就没问题了

他们是2个不同的头文件么,命名空间std 在iostream中定义而不是在iostream.h中定义么
...全文
218 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
qrcnu 2004-06-18
  • 打赏
  • 举报
回复
建议多看一看一些c++书籍
像c++primer,里面由很详细的解释
qrcnu 2004-06-18
  • 打赏
  • 举报
回复
.h报错是因为不存在此名字空间域
#include<iostream.h>

#include<iostream>
using namespace std
junnyfeng 2004-06-18
  • 打赏
  • 举报
回复
一般加了.h就不要加using namespace std 了
晨星 2004-06-18
  • 打赏
  • 举报
回复
http://community.csdn.net/Expert/FAQ/FAQ_Index.asp?id=169251
talkingmute 2004-06-18
  • 打赏
  • 举报
回复
ANS/ISO标准出来后:
#include<iostream>
using namespace std;
标准C++:
#include<iostream.h>
zb1226 2004-06-18
  • 打赏
  • 举报
回复

请问:

namespace aaa{
int ival=0;
}

using namespace std;
using namespace aaa;
是不是属于std名字间的对象,声明了 using namespace std;则可以省略std,
而即使声明了using namespace aaa;当引用ival时也不能省略aaa了。应为aaa::ival
dot99 2004-06-18
  • 打赏
  • 举报
回复
iostream是C++标准所推荐使用的头文件~
以前的所有的类, 全局名字等等全部包含在std名字空间下面
使用的时候要加域限定符号::
或者用using namespace设置默认名字空间~

抛弃iostream.h吧~
yiana1002 2004-06-17
  • 打赏
  • 举报
回复
新的包含格式和旧的包含格式的效果不同:
使用。H是旧的风格,非模板化的版本
忽略。H是新的风格,模板化的板本
yiana1002 2004-06-17
  • 打赏
  • 举报
回复
#include <iostream.h>
using namespace std;
新旧混用,肯定错吗
xp2004 2004-06-17
  • 打赏
  • 举报
回复
但是.h报错,不知道为什么

error C2871:'std' : does not exist or is not a
zbstone 2004-06-17
  • 打赏
  • 举报
回复
感觉MFC中还是使用。H的稳妥点
yiana1002 2004-06-17
  • 打赏
  • 举报
回复
#include <iostream>
using namespace std;新式写法

#include <iostream.h>旧式写法

随着C++的发展,不同的编译器厂家选择不同的扩展名,另外,各种不同的操作系统对扩展名存在不同的限制,特别是文件名的长度,这导致了源代码的可移植性问题,为了消除这些问题,标准的使用格式允许文件名长于8个字符,并消除了扩展名,翻译程序将以符合具体编译器和操作系统的方式来实现包含语句
shantang1984 2004-06-17
  • 打赏
  • 举报
回复
看了名字空间没有
带扩展名,就不用写iostream.h了,h 不要

69,371

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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