оамечание
Классы istream withassign И ostream withassign Произошли ОТ классов istream и ostream соответственно. Большая часть функциональности заложена в порождающих классах; классы-потомки добавили от себя лишь способность присваивания потоковых объектов.
Чтобы получить полное представление о производных классах, классах-потомках и операции присваивания, прочтите главы 14 "Базовые концепции классов", 17 "Конструкторы: копирование и присваивание" и 20 "Наследование и полиморфизм". Пока для нашего разговора это не столь важно.
Основные примеры
В листинге 13.1 приведено несколько фрагментов кода с примерами синтаксиса объектов cin и cout в обычных выражениях. Если эта тема для вас совершенно нова, рассмотрите их повнимательнее. •
// Пример А: Вывод строки по одному символу за раз char buf[] = "Доброе утро, Вьетнам!";
for( int j=0; j<strlen(buf); j++)
cout « buf[ j ];
// Пример В: Чтение массива из 128 символов int *response = new int[128];
for( int k = 0; k<128; k++)
cin » response[k];
delete [] response;
// Пример С: Вопросы и ответы char buf [25];
cout « "Как тебя зовут: ";
cin » but; // В следующем разделе вы узнаете,
// как это же сделать лучше cout « endl « "Hello, " « buf « endl;
Чтобы протестировать эти кусочки, включите их поочередно в функцию main вот этого фрагмента
// DEMO.CPP — "Plug'n'Play" для примеров потоков
#include <iostream.h> '
void main()
( // Вставьте сюда пример А, В или С }
Далее скомпилируйте фрагмент как программу консольного ввода-вывода на платформе Win32 или задайте ей целевую модель компиляции EasyWin.