Форум программистов, компьютерный форум CyberForum.ru

Перегрузка << - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Builder Разобраться с программой http://www.cyberforum.ru/cpp-beginners/thread147144.html
//--------------------------------------------------------------------------- #include <vcl.h> #pragma hdrstop #include "blbl.h" //--------------------------------------------------------------------------- #pragma package(smart_init) #pragma resource "*.dfm" TForm9 *Form9;
C++ Прямоугольная матрица Доброго дня всем!! вот задачку дали не могу решить: дана целочисленная матрица размером н на м найти первый столбец который имеет хотябф 1 нулевой эл., и найти сумму негативных парных элементов (первая часть задания почти решена мною а вот со второй проблема) кто знает помогите плизз!!! http://www.cyberforum.ru/cpp-beginners/thread147130.html
Строки С C++
Дана строка символов, содержащая слова. Определить количество слов, имеющих четную длину.
Вычислить сумму четных элементов одномерного массива до первого встречного нулевого элемента C (СИ)
Вычислить сумму четных элементов одномерного массива до первого встречного нулевого элемента.
C++ Даны натуральное число n http://www.cyberforum.ru/cpp-beginners/thread146680.html
Помогите пожалуста очень нужно!!!! данынатуральное число n,символи S1...Sn.будем рассматривать слова,образованные символами,входящими в последовательность S1....Sn,считая при этом,что количество символом в каждом слове не превосходит 15.найти какое-нибудь слово,оканчивающееся буквой д (если таких слов нет,то сообщить об этом)
C++ работа с символами ANSI (Экзамен) Здравствуйте! Помогите с написание программы. Нужно вывести таблицу ANSI, с этим вроде получилось, но было бы не плохо если вы напишите...) Далее нужно выделить русские буквы двумя знаками _ (земля). Буду очень признателен, прошу как можно быстрее.. подробнее

Показать сообщение отдельно
АТерентьев
20 / 19 / 1
Регистрация: 16.10.2009
Сообщений: 933
18.06.2010, 20:34     Перегрузка <<
Заинтересовала конструкция , использованная как перегрузка оператора "<<" для вывода записей, состоящих из трех строковых полей:

C++
1
2
3
4
5
6
7
ostream &operator<<(ostream &stream, address &ob)
{
  cout << ob.name<<endl;
  cout << ob.street<<endl;
  cout << ob.street<<endl;
  return stream;
}
Если теперь addr - это указанный тип записи, то одной командой можно вывести все три строковых поля :

C++
1
2
3
address addr;
...
cout<<addr;
то

Я полагал , что команда (в реализации перегрузки "<<")

C++
1
 cout << ob.name<<endl;
просто выводит строковую переменную на экран, но оказывается, что она "перехватывает"
stream и возвращает его командой
C++
1
return stream
.

Был очень благодарен, если кто-то прокомментировал этот факт.
Спасибо!
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 04:54. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru