Где взять iostream.h - PullRequest
       31

Где взять iostream.h

10 голосов
/ 13 сентября 2010

Я пытаюсь что-то сделать в Linux, но жалуется, что не может найти iostream.h. Что мне нужно установить, чтобы получить этот файл?

Ответы [ 3 ]

11 голосов
/ 13 сентября 2010

Правильное имя этого стандартного заголовка - просто iostream без расширения.

Если ваш компилятор все еще не может его найти, попробуйте следующее:

find /usr/include -name iostream -type f -print

... идобавьте его в свой путь включения, следуя документации вашего компилятора.

10 голосов
/ 13 сентября 2010

Заголовокявляется устаревшим заголовком до того, как C ++ стал стандартизированным как ISO C ++ 1998 (это из Аннотированного справочного руководства C ++).Стандартный заголовок C ++ - .Между ними есть некоторые незначительные различия, при этом наибольшее различие заключается в том, что помещает включенное содержимое в пространство имен std, поэтому вы должны указать cin, cout, endl, istream и т. Д. С помощью "std ::".В некотором роде взлом (это взлом, потому что заголовочные файлы никогда не должны содержать директив «using», поскольку они полностью нарушают назначение пространств имен), вы можете определить «iostream.h» следующим образом:

#ifndef HEADER_IOSTREAM_H
#define HEADER_IOSTREAM_H

#include <iostream>
using namespace std; // Beware, this completely defeats the whole point of
                     // having namespaces and could lead to name clashes; on the
                     // other hand, code that still includes <iostream.h> was
                     // probably created before namespaces, anyway.

#endif

Хотя это не совсем совпадает с оригинальным устаревшим заголовком, оно должно быть достаточно близко для большинства целей (то есть не должно быть ничего или очень мало вещей, которые вам придется исправлять).

2 голосов
/ 29 декабря 2010

Мне нужно скомпилировать partport на Debian, и у меня возникли проблемы (centos 4.5 работает нормально) Я сделал это без успеха

Я обнаружил, что iostream.h предоставляет из c ++, и нашел его на centos 4.5

, поэтому я скопировал из centos 4.5 в ubuntu natty файл iostream.h и он работал
scp root@ ip.centos-4.5: / usr / include / c ++ / 3.3.4 / backward / iostream.h /usr/include/c++/4.5/iostream.h

...