Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
MEPTPAH
22 / 12 / 5
Регистрация: 07.08.2012
Сообщений: 109
#1

Перегрузка оператора ввода

01.11.2012, 19:50. Просмотров 893. Ответов 6
Метки нет (Все метки)

почему не работает следующий код?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
class obj
{
    unsigned int book_id;
    string title;
    unsigned price;
public:
    obj(string i = "None", unsigned int b = 0, unsigned int p = 0): title(i), book_id(b), price(p) { }
    
    friend istream& operator>> (istream& in, const obj &rhs);
};
 
istream& operator>> (istream& in, const obj &rhs) {
    in >> rhs.title >>/*ругается, мол оператор не соответствует операндам*/ rhs.book_id >> rhs.price;
    return in;
}

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
01.11.2012, 19:50
Ответы с готовыми решениями:

Перегрузка оператора ввода
Всем привет. Я хочу попробовать написать свой класс string. Вот пока...

Перегрузка оператора ввода
Данные вводятся в виде std::istream& operator >> (std:: istream& in,const...

Перегрузка оператора ввода >>
При компиляции выдает такие ошибки, не могу разобраться в чем проблема. ...

Перегрузка оператора ввода
Добрый день, есть вот такая штуковина: // в M.matrix лежат значения...

Перегрузка оператора ввода
Добрый вечер, уважаемые форумчане. Возник вопрос о перегрузке оператора ввода....

6
alsav22
5439 / 4834 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
01.11.2012, 19:55 #2
#include <string> сделан?
0
MEPTPAH
22 / 12 / 5
Регистрация: 07.08.2012
Сообщений: 109
01.11.2012, 19:56  [ТС] #3
Цитата Сообщение от alsav22 Посмотреть сообщение
#include <string> сделан?
C++
1
2
#include <iostream>
#include <string>
0
alsav22
5439 / 4834 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
01.11.2012, 20:00 #4
C++
1
friend const istream& operator>> (istream& in, obj &rhs);
0
MEPTPAH
22 / 12 / 5
Регистрация: 07.08.2012
Сообщений: 109
01.11.2012, 20:04  [ТС] #5
Цитата Сообщение от alsav22 Посмотреть сообщение
C++
1
friend const istream& operator>> (istream& in, obj &rhs);
C++
1
2
3
4
5
6
7
8
9
10
11
12
class obj
{
//...
public:
friend const istream& operator>> (istream& in, obj &rhs);
//...
};
 
const istream& operator>> (istream& in, const obj &rhs) {
    in >> rhs.title >> rhs.book_id >> rhs.price;
    return in;
}
без изменений
0
alsav22
5439 / 4834 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
01.11.2012, 20:52 #6
В 9 строке const уберите:
C++
1
2
3
4
const istream& operator>> (istream& in, obj &rhs) {
    in >> rhs.title >> rhs.book_id >> rhs.price;
    return in;
}
1
MEPTPAH
22 / 12 / 5
Регистрация: 07.08.2012
Сообщений: 109
01.11.2012, 22:08  [ТС] #7
Спасибо) заработало!
0
01.11.2012, 22:08
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
01.11.2012, 22:08

Перегрузка оператора ввода ,вывода
Вообщем проблема такая есть класс в нем приват поля и перегружены 2...

Перегрузка оператора ввода и наследование
Добрый день! Обращаюсь по такому поводу. Есть одна программа, в которой...

Перегрузка оператора ввода, ошибка
struct date_of_birth { int year; int month; int day; date_of_birth(int...


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

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