1. Набираем команду codeby webinar. Набираем команду для организации и проведения вебинаров. Подробнее ...

    Скрыть объявление
  2. Требуются разработчики и тестеры для проекта codebyOS. Требования для участия в проекте: Знание принципов работы ОС на базе Linux; Знание Bash; Крайне желательное знание CPP, Python, Lua; Навыки системного администрирования. Подробнее ...

    Скрыть объявление
  3. Получи 30.000 рублей. Для получения денег необходимо принять участие в конкурсе авторов codeby. С условиями и призами можно ознакомиться на этой странице ...

    Внимание! Регистрация авторов на конкурс закрыта.

    Скрыть объявление

Вопрос: перегрузка оператора потокового вывода. С++. ООП.

Тема в разделе "Вопросы новичков и не только", создана пользователем TranE91, 10 ноя 2010.

  1. TranE91

    TranE91 Гость

    Репутация:
    0
    Кароче, трабла такая, имеется базовый класс, от него два производных, от этих двух имеется еще один производный. для наглядности диаграмма классов.
    Трабла нелепа, но и не понятна. При перегрузке оператора вывода(<<) выскакивает "неоднозначный уровень доступа" к данным первого САМОГО базового класса. Как же все-таки толково правильно сделать эту перегрузку не используя воидовский вывод того класса в перегрузке?

    Код:
    ostream &operator<<(ostream& zout,const saller& KK)
    {
    zout<<KK.name<<"\t"<<KK.surname<<"\t"<<KK.patronymic<<"\t"<<KK.year<<"\t"<<KK.license_number<<"\t"<<KK.adress<<"\t"<<KK.passport_number<<endl;
    for(int i=0;i<20;i++)
    zout<<KK.departations[i][0].land<<"\t"<<KK.departations[i][0].year<<"\t"<<KK.departations[i][1].land<<"\t"<<KK.departations[i][1].year<<endl;
    zout<<KK.tov<<"\t"<<KK.adress[0];
    for(int i=1;i<5;i++)
    zout<<KK.adress[i];
    return zout;
    }
     

    Вложения:

    • Вопрос: перегрузка оператора потокового вывода. С++. ООП.
      diagramm.jpg
      Размер файла:
      294,7 КБ
      Просмотров:
      33
  2. DarkKnight

    DarkKnight Well-Known Member

    Репутация:
    0
    Регистрация:
    1 авг 2010
    Сообщения:
    653
    Симпатии:
    0
    Выкинь пожалуйста код определения всех классов...
    Интерисует только само определение, без функций...
    В диаграмме сложно уловить, но думаю проблема у тебя как раз с обозначением видимости (доступности : private, protect, public)...
     
Загрузка...

Поделиться этой страницей