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

Распечатать односвязный список классов - C++

Восстановить пароль Регистрация
 
mansp
18 / 18 / 0
Регистрация: 07.11.2010
Сообщений: 136
14.04.2011, 22:42     Распечатать односвязный список классов #1
создал несколько классов так :первый класс абстактный втрой унаследывает от первого, третий от второго
в первом класе есть функция print()=0 она переопеределяетса во втором и третем,
так же в первом сделал указатели для добавления новых обьектов классов в список (односвязный)
C++
1
2
3
4
5
6
7
8
9
10
11
    Animals *next;
    static Animals *first;
    static friend void print_list()
    { 
        Animals *temp = first;
        while(temp)
        {
            temp->print();
            temp = temp->next;
        }
    }
теперь мне надо распечатать этот список
при вызове функции print_list() пиит вот что
error C3767: print_list: функции-кандидаты недоступны
может быть дружественная функция в "e:\amp lr\lr 11\lr 11\class.h(29)": "print_list" [может быть найдена при поиске с зависимостью от аргументов]
может надо реализовть функцию печати как то по другому?
посоветуйте пожалуйста
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.04.2011, 22:42     Распечатать односвязный список классов
Посмотрите здесь:

C++ Односвязный список
C++ Односвязный список
C++ Односвязный список
C++ Односвязный список
C++ Односвязный список
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
ForEveR
Модератор
Эксперт C++
 Аватар для ForEveR
7927 / 4709 / 318
Регистрация: 24.06.2010
Сообщений: 10,524
Завершенные тесты: 3
14.04.2011, 22:44     Распечатать односвязный список классов #2
mansp, А зачем static? static не нужен. friend не нужен.
mansp
18 / 18 / 0
Регистрация: 07.11.2010
Сообщений: 136
14.04.2011, 22:49  [ТС]     Распечатать односвязный список классов #3
мне нужно чтобы функция была статик , так в задании сказано

Добавлено через 1 минуту
если убрать френд то работает

Добавлено через 1 минуту
но я хочу сделать что бы в мейне вызывался просто print_list() а не objeck.print_list()
ForEveR
Модератор
Эксперт C++
 Аватар для ForEveR
7927 / 4709 / 318
Регистрация: 24.06.2010
Сообщений: 10,524
Завершенные тесты: 3
14.04.2011, 22:54     Распечатать односвязный список классов #4
mansp, Animals:rint_list. а friend static это бессмысленно, т.к. friend функция не является членом класса.
silent_1991
Эксперт C++
4938 / 3014 / 149
Регистрация: 11.11.2009
Сообщений: 7,024
Завершенные тесты: 1
14.04.2011, 22:57     Распечатать односвязный список классов #5
Тогда функцию нужно описать вне класса.
mansp
18 / 18 / 0
Регистрация: 07.11.2010
Сообщений: 136
14.04.2011, 23:04  [ТС]     Распечатать односвязный список классов #6
ну тогда может просто написать френд функцию которая будет вызывать мою статик функию?

Добавлено через 3 минуты
всём спаибозаработало))
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
14.04.2011, 23:06     Распечатать односвязный список классов
Еще ссылки по теме:

C++ Односвязный список
C++ Односвязный список (реализация без классов)
C++ Создать двусвязный список групп факультета, где каждая группа представляет собой односвязный список студентов

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

Или воспользуйтесь поиском по форуму:
silent_1991
Эксперт C++
4938 / 3014 / 149
Регистрация: 11.11.2009
Сообщений: 7,024
Завершенные тесты: 1
14.04.2011, 23:06     Распечатать односвязный список классов #7
mansp, а можно ещё гланды через задницу удалять... Я вот, читая добрую половину тем, голову ломаю, почему все так боятся написать, как им подсказывают. С теми, кто не сам пишет, всё понятно. Но те, кто пишет сам, что им мешает сейчас сделать так, а потом, если уж преподу совсем не понравится, переделать так, как требует он (что займёт минуты две от силы). По собственному опыту и по тем вопросам, которые тут частенько задают на счёт заданий, данных преподавателями, могу сказать, что очень часто преподаватели и сами не понимают того, что они итребуют и что так зачастую делать неправильно или вообще невозможно.
Yandex
Объявления
14.04.2011, 23:06     Распечатать односвязный список классов
Ответ Создать тему
Опции темы

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