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

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

Войти
Регистрация
Восстановить пароль
 
Blitzor DDD
13 / 13 / 1
Регистрация: 17.08.2015
Сообщений: 448
#1

Зачем "&" в "ostream& operator<<"? - C++

01.08.2016, 16:32. Просмотров 214. Ответов 2
Метки нет (Все метки)

Здарова.

Я представляю, что такое перегрузка операций, но вот наткнулся на непонятный синтаксис.

C++ (Qt)
1
2
3
4
5
6
7
8
enum Months{
    Jan=1, Feb, Mar, Apr, May, Jul, Aug, Sep, Oct, Nov, Dec
};
 
       vector<string> month_tbl1;
       ostream& operator<<(ostream& os, Months m){
       return os<<month_tbl1[m];
}
C++ (Qt)
1
ostream& operator<<(ostream& os, Months m)
Перегружаем <<, а зачем перед operator &?
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
01.08.2016, 16:32     Зачем "&" в "ostream& operator<<"?
Посмотрите здесь:
В чём разница между возвратом "string" и "const string&" & C++
Зачем тут нужен амперсанд "&"? C++
Зачем использовать символ "&"? C++
зачем нужен "&" ? C++
При вызове конструктора ошибка: L "Buffer is too small" & & 0 C++
C++ friend ostream &operator<<(ostream &stream, MyClass o);
Expression: (L"Buffer is too small" && 0) C++
C++ Ошибка : " L Buffer is too small & & 0"
Почему условие "a && b == 0" не выполняется? C++
C++ Классы: ка победить ошибку из "const Type" в "Type &"
невозможно преобразовать параметр 1 из "int" в "int *&" C++
C++ особенности передачи по "&&"

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
HelicopterK52
659 / 202 / 28
Регистрация: 27.07.2016
Сообщений: 475
Завершенные тесты: 1
01.08.2016, 16:33     Зачем "&" в "ostream& operator<<"? #2
Цитата Сообщение от Blitzor DDD Посмотреть сообщение
Перегружаем <<, а зачем перед operator &?
Уберите, узнаете. Разве это так сложно?
Ferrari F1
=^_^=
553 / 440 / 93
Регистрация: 27.01.2015
Сообщений: 2,553
Записей в блоге: 1
Завершенные тесты: 1
01.08.2016, 16:38     Зачем "&" в "ostream& operator<<"? #3
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Blitzor DDD,
ostream& operator<<(ostream& os, Months m)
возврат ссылки

Если без амперсанда, то возникала бы ошибка - потоковые объекты нельзя ни копировать, ни присваивать.
Ответ Создать тему
Опции темы

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