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

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

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Математические методы решения http://www.cyberforum.ru/cpp-beginners/thread41680.html
Здравсвуйтк программеры! Сейчас сдаю предмет "Математические методы исследования операций". Сделал 1 лаб. работу. Столкнулся с проблеммой во 2-ой лабораторной. Нужно сдавать через 2 дня. Помогите...
C++ Составить программу, выдающую справку о номерах рейсов самолётов Очень нужна помощь по решению этих задачек... Помогите пожалуйста, если это вообще возможно... 1. Сгенерировать последовательность 100 случайных чисел х(i) с равномерным законом распределения в... http://www.cyberforum.ru/cpp-beginners/thread41669.html
Вывод последовательности чисел (цикл с параметром) C++
1)Вывод последовательности чисел (цикл с параметром) a) Вывести «столбиком» значения: cos2,1 cos2,2 cos2,3 ... cos2,8 2)Цифры числа (цикл с условием) a) Дано натуральное число. Определить ...
C++ Симметричная квадратная матрица
"Симметричная квадратная матрица А порядка n задана последовательностью n(n+1)/2 чисел, аналогично правой треугольной матрице. Кроме этой последовательности дан вектор b с n элементами. Найти вектор...
C++ составить программу поиска двух строк http://www.cyberforum.ru/cpp-beginners/thread41655.html
Дана числовая таблица С размером N*N. Составить программу поиска двух строк по следующему алгоритму : одной - с минимальным значением среднего арифметического (SR), другой - с максимальным значением...
C++ перемещение в конец столбец в квадрвтной таблице В квадратной таблице В размером (N,N) переместить в конец столбец , у которого количество повторений элемента чаще других встречающегося максимально по сравнению с другими столбцами.Таблицу выдать на... подробнее

Показать сообщение отдельно
AltPeople
10 / 10 / 1
Регистрация: 25.09.2008
Сообщений: 73

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

23.06.2009, 18:08. Просмотров 1495. Ответов 10
Метки (Все метки)

ачал изучать перегрузку ф-ций. Вот код:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
#include <iostream.h>
class PhoneNumber
{
friend ostream &operator<<(ostream &, const PhoneNumber &);
friend istream &operator<<(istream &, PhoneNumber &);
 
private:
        char areaCode[4];
        char exchange[4];
        char line[5];      
};
ostream &operator<<(ostream &output, const PhoneNumber &num)
{
        output<<"("<<num.areaCode<<")"<<num.exchange<<"-"<<num.line;
        return output;        
}
istream &operator>>(istream &input, PhoneNumber &num)
{
        input.ignore();
        input.getline(num.areaCode,4);
        input.ignore(2);
        input.getline(num.exchange,4);        
        input.ignore(2);
        input.getline(num.line,5);
        
        return input;
}
 
int main()
{
char ch='y';
    
    do{
       PhoneNumber phone;
       cout<<"Enter number in (123) 456-7890 format:\n";
       cin>>phone;
       cout<<"Number: "<<phone;        
        
              
        cout<<"\n\nContinue y/n? "<<endl;
        cin>>ch;
     }while (ch=='y');
 
     return 0;
}
Выдает следующие ошибки:
In function `std::istream& operator>>(std::istream&, PhoneNumber&)':
`char PhoneNumber::areaCode[4]' is private within this context
`char PhoneNumber::exchange[4]' is private within this context
`char PhoneNumber::line[5]' is private within this context


я понимаю, что есть проблема с обращением к закрытым членам, а вот как разрешить это не могу понять.
вроде &num дает право доступа к закрытым членам...
поиск не помог(((((
среда Dev C++
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru