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

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

Войти
Регистрация
Восстановить пароль
 
RESTY
5 / 5 / 0
Регистрация: 30.05.2012
Сообщений: 89
#1

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

04.07.2013, 23:13. Просмотров 916. Ответов 2
Метки нет (Все метки)

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

вот "куски кода".

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
private :
    int real;
    int image;
....
public :
....
friend std::istream &operator >>(std::istream stream, Complex &c);
friend std::ostream &operator <<(std::ostream stream, const Complex &c);
.....
std::istream& operator >> (std::istream &stream, Complex &c)
{
    stream >> c.real;
    stream >> c.image;
    return stream;
}
 
std::ostream& operator << (std::ostream &stream, const Complex &c)
{
    stream << c.real << " +i("<<c.image<<")";
    return stream;
}
при компиляции выдает ошибку, нет доступа к закрытым полям класса, что то в этом роде.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.07.2013, 23:13     Перегрузка оператора ввода ,вывода
Посмотрите здесь:

C++ перегрузка оператора вывода
C++ Перегрузка оператора вывода
C++ Перегрузка оператора вывода
Перегрузка оператора вывода C++
Перегрузка оператора ввода вывода C++
Перегрузка оператора вывода C++
В чем ошибка? Перегрузка оператора ввода\вывода C++
C++ Перегрузка оператора вывода
Перегрузка оператора вывода C++
C++ Перегрузка оператора вывода
Перегрузка оператора вывода C++
C++ Перегрузка оператора вывода

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
alsav22
5415 / 4811 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
04.07.2013, 23:55     Перегрузка оператора ввода ,вывода #2
В прототипах и реализациях параметры разные :
C++
1
2
friend std::istream &operator >>(std::istream &stream, Complex &c);
friend std::ostream &operator <<(std::ostream &stream, const Complex &c);
RESTY
5 / 5 / 0
Регистрация: 30.05.2012
Сообщений: 89
05.07.2013, 00:32  [ТС]     Перегрузка оператора ввода ,вывода #3
блин вот как так то) я уже все перепроверил думаю в чем же ошибка, ошибки вроде как и нет, собственная невнимательность.Спасибо, вопрос снят.
Yandex
Объявления
05.07.2013, 00:32     Перегрузка оператора ввода ,вывода
Ответ Создать тему
Опции темы

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