一个初学者关于头文件的困惑
我在论坛上经常看到没有.h的头文件
我人为没有.h的头文件是不行的
但是不知道是我错了
还是其他人错了
又或者是他们人为大家都懂了
所以就省略了
请懂的朋友给我解释一下
谢谢~
问题点数:20、回复次数:19Top
1 楼sunriselx()回复于 2004-04-04 19:30:40 得分 0
应该是省略了Top
2 楼lxh1010(匿迹)回复于 2004-04-04 19:32:39 得分 0
省略了Top
3 楼zfol510(第九)回复于 2004-04-04 20:03:00 得分 5
?不是省略了吧
标准C++的头文件就是不带.h的啊?因为引入名字空间。
比如
#include <iostream>
using namespace std;
说明使用的是名字空间std
如果
#include<iostream.h>
的话,使用的是名字空间iostream(不确定,我没试过)就不能
using namespace std;
了,不知道说清楚没
Top
4 楼lifanxi(Byron)回复于 2004-04-04 20:15:30 得分 3
标准没有要求头文件必须有.h的后缀,而且C++标准库的头文件名就不含扩展名。
如果头文件实际上是有扩展名的,则不能省略。Top
5 楼freefalcon(心宇—消失中...)回复于 2004-04-04 20:17:04 得分 0
楼上说的是
不带.h的是标准c++的库文件,它引入了命名空间(namespace)
可以试试
当写#include <iostream.h>时
下面的代码
cout << "abc";
可以直接通过
而用#include <iostream>
你不得不使用
using namespace std;
或者
std::cout << "abc";
Top
6 楼littlebboy(小男孩儿)回复于 2004-04-04 20:34:51 得分 0
只有c++标准库文件可以不带.h,因为头文件的后缀在不同的c++实现产品上不同,标准c++文件并没有指定头文件后缀。Top
7 楼banquet(Everything will be well)回复于 2004-04-04 20:41:53 得分 0
用户自定义的头文件要加 .h
实现文件用.cppTop
8 楼vcchunhong(願意偽祢)回复于 2004-04-05 13:17:34 得分 0
哦其实说来说去是我不懂using namespace std;
的意思~
大体上我是懂的
结贴吧~Top
9 楼vcchunhong(願意偽祢)回复于 2004-04-05 13:48:10 得分 0
谢谢大家~Top
10 楼Wolf0403(废人:独活十年~心如刀割)回复于 2004-04-05 13:50:42 得分 0
编译器面前没有“省略”一说的,呵呵。
有没有 .h 的根本就是两套不同版本的 C++ 标准库。
至于非标准库的,头文件可以是 .h, .hpp, .hxx,没有扩展名或者任意类型的 plain text 文档。Top
11 楼zylfly()回复于 2004-04-05 15:05:07 得分 0
好像旧版本是用.h,新的是用 using namespace stdTop
12 楼vcchunhong(願意偽祢)回复于 2004-04-17 14:51:53 得分 0
其实早就该结了Top
13 楼xiangzhengyan(千里单骑走西藏)回复于 2004-04-17 20:08:09 得分 0
#include"filename"
到include目录下看看
既然有的文件没后缀名 当然不用.h啦
该完了Top
14 楼plpl574(飞天猪宝宝)回复于 2004-04-21 00:18:49 得分 0
这个问题被提过N遍了//包括我Top
15 楼xyj0323(好好学习,天天向上)回复于 2004-04-21 14:05:49 得分 0
学习一下。Top
16 楼eliner(eliner)回复于 2004-04-21 14:22:39 得分 0
使用了using namespace std的时候就可以不要.h
不然的后,就需要Top
17 楼byyyyy(苦行僧【苦】)回复于 2004-04-21 14:25:20 得分 0
采用了名字空间的问题Top
18 楼zhang5765(柠檬)回复于 2004-04-21 14:53:45 得分 5
在.NET编程里用iostrea.h的cout,cin.会通不过编译。但是可以用
<iostrea>与using namespace std;连用而使用cout,cin则是正确的。
可能有什么规定。具体细节偶也不太了解Top
19 楼aprilsnow(四月飞雪)☆(不再相信爱情)回复于 2004-04-21 15:24:23 得分 7
被 include 的文件是什么,就应该有一个什么样的相应文件。比如 #include <abc>,就应该有一个叫做 abc 的文件。再比如 #include <abc.h>,就应该有一个叫做 abc.h 的文件。Top




