Читать «C++: базовый курс» онлайн - страница 346
Herbert Schildt
Но если вы используете компилятор, созданный несколько лет назад, то при попытке скомпилировать наши примеры он может выдать целый список ошибок, не распознав ряд новых С++-средств. И в этом случае не стоит волноваться. Для того чтобы эти программы заработали со старыми компиляторами, нужно внести в них небольшие изменения. Чаще всего старые и новые С++-программы отличаются использованием двух средств: заголовков и пространств имен. Вот об этом и пойдет речь в этом приложении.
Как упоминалось в главе 2, инструкция
#include <iostream.h>
В этом случае в программу был бы включен заголовочный файл
В новых С++-программах в соответствии со стандартом ANSI/ISO для C++ используются заголовки другого типа. Современные заголовки определяют не имена файлов, а стандартные идентификаторы, которые могут совпадать с таковыми, но не всегда. Современные С++-заголовки представляют собой абстракцию, которая попросту гарантирует включение в программу требуемой информации.
Поскольку современные заголовки необязательно являются именами файлов, они не должны иметь расширение
<iostream>
<fstream>
Чтобы преобразовать эти
Включая современный заголовок в программу, необходимо помнить, что его содержимое относится к пространству имен
using namespace std;
В действительности большинство старых компиляторов вообще не воспримут инструкцию
Два простых изменения
Если ваш компилятор не поддерживает пространства имен и новые заголовки, он выдаст одно или несколько сообщений об ошибках при попытке скомпилировать первые несколько строк программ, приведенных в этой книге. В этом случае в эти программы необходимо внести только два простых изменения: использовать заголовок старого типа и удалить
#include <iostream>
using namespace std;
такой.
#include <iostream.h>
Это изменение преобразует