|
Программирование >> Расширенная версия языка c++
Пространства имен Когда вы включаете в программу заголовок нового стиля, содержание этого заголовка оказывается в пространстве имен std. Пространство имен (namespace) - это просто некая объявляемая область, необходимая для того, чтобы избежать конфликтов имен идентификаторов. Традиционно имена библиотечных функций и других подобных идентификаторов располагались в глобальном пространстве имен (как, например, в С). Однако содержание заголовков нового стиля помещается в пространстве имен std. Позднее мы рассмотрим пространства имен более подробно. Сейчас же, чтобы пространство имен std стало видимым, просто используйте следующую инструкцию: using namespace std; Эта инструкция помещает std в глобальное пространство имен. После того как компилятор обработает эту инструкцию, вы сможете работать с заголовками как старого, так и нового стиля. Если вы работаете со старым компилятором Как уже упоминалось, заголовки нового стиля и пространства имен появились в C++ совсем недавно, поэтому эти черты языка могут не поддерживаться старыми компиляторами. Если у вас один из таких компиляторов, то при попытке компиляции первых строк кода, приводимых в книге примеров программ, вы получите одно или несколько сообщений об ощиб-ках. Обойти эту проблему просто - удалите инструкцию namespace и- используйте заголовки старого стиля. То есть замените имер, инструкции jtincliide <iosl-renri> using namespace std; на инструкцию #include <iostream.h> , Это простое действие превратит современную программу в такую же, но в традиционном стиле. Поскольку заголовок старого стиля считывает все свое содержание в глобальное пространство имен, необходимость в инструкции namespace отпадает. И еще одно замечание. Еще в течение нескольких лет вы будете встречать программы, в которых заголовки будут оформлены в старом стиле и не будет инструкций namespace. Ваш компилятор C++ будет прекрасно справляться с такими программами. Тем не менее, что касается новых программ, вам следует использовать современный стиль, поскольку именно он определен стандартом языка Standard C++. Хотя программы прежнего стиля будут поддерживаться еще многие годы, технически они некорректных. }кненця1 Перед тем как продолжить, попытайтесь откомпилировать представленный выше пример простейшей программы. Хотя эта программа не выполняет никаких действий, попытка ее компиляции поможет определить, поддерживает ли ваш компилятор современный синтаксис C++. Если он не принимает заголовки нового стиля и инструкцию namespace, замените их, как только что было описано. Запомните, если ваш компилятор не принимает код нового стиля, вам придется сделать изменения в каждой программе этой книги. 1.3. Консольный ввод и вывод в C++ Поскольку C++ - это улучшенный С, все элементы языка С содержатся также и в C++. Это подразумевает, что все программы, написанные на С, по умолчанию являются также и программами на C++. (На самом деле имеется несколько очень незначительных исключений из этого правила, которые будут рассмотрены позже.) Поэтому можно писать программы на C++, которые будут выглядеть точно так же, как и программы на С. Ошибки не будет, это только будет означать, что вы не смогли использовать все преимущества C++. Чтобы по достоинству оцените необходимо писать программы в стиле C++. Вероятно, наиболее своеобразной чертой язхка C++, используемой программистами, является подход к вводу и выводу. Хотя такие функции, как printfO и scanfQ, по-прежнему доступны, С++ обеспечивает иной, лучший способ выполнения этих операций. В C++ ввод/вывод выполняется с использованием операторов, а не функций ввода/вывода. Оператор вывода -эт <<, а оператор ввода >>, Как вы знаете, в С эти операторы являются, соответственно, операторами левого и правого сдвига. В C++ они сохраняют свое первоначальное значение (левый и правый сдвиг), выполняя при этом еще ввод и вывод. Рассмотрим уюшую инструкцию C++: cou< Эта строка олится на экран.\п ; Эта инструкция осуществляет вывод строки в заранее определенный поток cout, который автоматически связывается с терминалом, когда программа С++ начинает выполняться. Это напоминает действие функции .stdout в языке С. Как и в С, терминал для ввода/вывода в C++ может быть переопределен, но пока будем считать, что используется экран. С помощью оператора вывода можно вывести данные любого базового типа C++. Например, следующая инструкция осуществляет вывод величины 100.99: couW< 100.99; Разноетолкование символов является ером перегрузки операторов. Для правильного использования операторов ввода/вывода в С++ вы должны включить в программу заголовочный файл iostream.h. Он является одним из стандартных заголовочных файлов C++ и поставляется с компилятором. Ц Примеры 1. В этой программе выводится строка, два целых числа и одно число с плавающей точкой двойной точности: #include <iostream> . .. ц-y.f.i. j. < using namespace std; int main () r int i, j; double d; В общем случае, для вывода на экран терминала используется следующая обычная форма оператора : cout выражение; > 1.1 . - . Здесь выражение может быть любым действительным выражением C++, включая другие выражения вывода. Для считывания значения с клавиатуры, используйте оператор ввода >>. Например, в этом фрагменте целая величина вводится в num: int num; cin num; Обратите внимание, что переменной num не предшествует амперсанд &. Как вы знаете, при вводе с использованием функции nf() языка С ей должны передаваться адреса переменных. Только тогда они смогут получить значения, вводимые пользователем. В случае использования оператора ввода C++ все происходит иначе. (Смысл этого станет ясен после того, как вы больше узнаете о C++.) В общем случае для ввода значения с клавиатуры, используйте следующую форму оператора ci переменная; : . ..: \
|
© 2006 - 2024 pmbk.ru. Генерация страницы: 0
При копировании материалов приветствуются ссылки. |