在C++中没有.h的头文件

4 c++ linux header-files

我有麻烦,包括标准的头文件,如iostream.hfstream.h.在我的系统下usr/include/c++/4.3,没有任何文件具有".h"扩展名(例如,它只是iostream而不是iostream.h).

那将是好的和花花公子,但我正在尝试使用另一个库,DCMTK,它做的事情就像#include<iostream.h>.不幸的是,在我的系统上没有"iostream.h"这样的东西,只有"iostream",这意味着我的编译器给了我错误error: iostream.h: No such file or directory.

我想我可以从创建软链接iostream.hiostream,但是,似乎是它可以创建,首先,烦恼的道路,所有的第二,真正刺激性.还有其他解决方案吗?

为了完整性,我给编译的命令是

g++ -o gc_on_ctp -g -Wall -Idicom/include -Ldicom/lib gc_on_ctp.cpp -ldcmdata
Run Code Online (Sandbox Code Playgroud)

可以想象,头文件位于dicom/include下,库位于dicom/lib下,名为libdcmdata.a.

Jac*_*ack 7

我建议你看看这里.它解释了为何以及何时iostream.h / iostream出生,为什么存在以及如何解决这些问题.

主要iostream.h是要考虑不推荐使用 不可靠实现特定的和使用iostream的地方,一个可能会导致错误的..


Gia*_*nni 6

只需创建一个新的iostream.h文件,其中包含一行:#include <iostream>.这似乎是DCMTK的一个大错误,因为标准是这些文件名中不应该有.h.

  • 这是常见的解决方案 - Qt在其他方面使用它.它曾经更常见,因为有些编译器不会在没有.h的情况下处理文件! (4认同)