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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Rexer
 Аватар для Rexer
163 / 162 / 20
Регистрация: 10.10.2010
Сообщений: 723
#1

Перегрузка вывода - C++

20.10.2011, 17:12. Просмотров 442. Ответов 2
Метки нет (Все метки)

Всем привет!
Возник тут вопрос один,вот делаем мы перегрузку простую какую-нибудь,например для комплексных чисел вычитание
C++
1
2
3
4
5
6
7
8
9
Complex operator - (Complex &c) // перегрузка оператора вычитания
        {
                Complex temp;
 
                temp.re = re - c.re;
                temp.im = im - c.im;
 
                return temp;
        }
Все отлично,теперь хочу сделать перегрузку оператора <<,нашел вот это
C++
1
2
3
4
5
6
7
8
9
ostream &operator<<(ostream &out, const Complex &c)
{
        out << c.re;
        if( c.im > 0 )
                out << "+";
        out << c.im << "i";
 
        return out;
}
Но мне не ясно,зачем амперсант перед ключевым словом operator стоит.
Не могли бы вы мне помочь?
Заранее спасибо!
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.10.2011, 17:12     Перегрузка вывода
Посмотрите здесь:

C++ перегрузка оператора вывода
C++ Перегрузка оператора вывода
Перегрузка оператора вывода C++
Перегрузка оператора вывода C++
Перегрузка операции вывода C++
Перегрузка вывода в поток C++
Перегрузка вывода и ввода C++
Перегрузка оператора вывода C++
C++ Перегрузка оператора вывода
Перегрузка оператора вывода C++
Не работает перегрузка вывода C++
C++ Перегрузка оператора вывода

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Net_Wanderer
235 / 208 / 19
Регистрация: 08.06.2011
Сообщений: 467
20.10.2011, 17:18     Перегрузка вывода #2
Цитата Сообщение от Rexer Посмотреть сообщение
Но мне не ясно,зачем амперсант перед ключевым словом operator стоит.
Что бы возвращать ссылку на ostream, а не обьект.
Иначе, при каждом, например таком: std::cout << obj, вызове этого оператора будет создаватся и возвращатся копия std::cout
Rexer
 Аватар для Rexer
163 / 162 / 20
Регистрация: 10.10.2010
Сообщений: 723
20.10.2011, 18:20  [ТС]     Перегрузка вывода #3
Спасибо вам большое!
Yandex
Объявления
20.10.2011, 18:20     Перегрузка вывода
Ответ Создать тему
Опции темы

Текущее время: 06:22. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru