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

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

Войти
Регистрация
Восстановить пароль
 
mansp
18 / 18 / 0
Регистрация: 07.11.2010
Сообщений: 136
#1

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

14.04.2011, 22:42. Просмотров 494. Ответов 6
Метки нет (Все метки)

создал несколько классов так :первый класс абстактный втрой унаследывает от первого, третий от второго
в первом класе есть функция 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" [может быть найдена при поиске с зависимостью от аргументов]
может надо реализовть функцию печати как то по другому?
посоветуйте пожалуйста
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.04.2011, 22:42
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Распечатать односвязный список классов (C++):

Односвязный список (реализация без классов) - C++
Задача проста: создать список из слов, вводимых с клавиатуры, и вывести его на консоль. Всё вводит и выводит. Только откуда-то взялась "Д"...

Реализовать иерархию классов, включающую в себя односвязный и двусвязный список - C++
Нужно реализовать иерархию классов, включающую в себя односвязный и двусвязный список. При компиляции программа выдает ошибку:"Ошибка 1...

Сформировать список из 10 книг, используя динамическую структуру данных односвязный список - C++
друзья спасайте Сформировать список из 10 книг, используя динамическую структуру данных односвязный список С++

Создать двусвязный список групп факультета, где каждая группа представляет собой односвязный список студентов - C++
Задание: создайте двусвязный список групп факультета. Каждая группа представляет собой односвязный список студентов. Помогите пожалуйста,...

Задали односвязный линейный список с целыми числами. Создать новый список, который содержит элементы заданного списка в обратном порядке - C++
Задали односвязный линейный список с целыми числами. Создать новый список, который содержит элементы заданного списка в обратном порядке.

Односвязный список - C++
Где можно прочитать про это? Чтобы было просто написано: как создать список, как добавить туда элементы, как удалить список. 4 учебника...

6
ForEveR
В астрале
Эксперт С++
7992 / 4751 / 321
Регистрация: 24.06.2010
Сообщений: 10,547
Завершенные тесты: 3
14.04.2011, 22:44 #2
mansp, А зачем static? static не нужен. friend не нужен.
1
mansp
18 / 18 / 0
Регистрация: 07.11.2010
Сообщений: 136
14.04.2011, 22:49  [ТС] #3
мне нужно чтобы функция была статик , так в задании сказано

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

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

Добавлено через 3 минуты
всём спаибозаработало))
0
silent_1991
Эксперт С++
5005 / 3063 / 149
Регистрация: 11.11.2009
Сообщений: 7,043
Завершенные тесты: 1
14.04.2011, 23:06 #7
mansp, а можно ещё гланды через задницу удалять... Я вот, читая добрую половину тем, голову ломаю, почему все так боятся написать, как им подсказывают. С теми, кто не сам пишет, всё понятно. Но те, кто пишет сам, что им мешает сейчас сделать так, а потом, если уж преподу совсем не понравится, переделать так, как требует он (что займёт минуты две от силы). По собственному опыту и по тем вопросам, которые тут частенько задают на счёт заданий, данных преподавателями, могу сказать, что очень часто преподаватели и сами не понимают того, что они итребуют и что так зачастую делать неправильно или вообще невозможно.
1
14.04.2011, 23:06
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
14.04.2011, 23:06
Привет! Вот еще темы с ответами:

Односвязный список - C++
как в односвязном списке сделать проверку на одинаковые элементы? и если они есть, удалить один из них.

Односвязный список - C++
"Односвязный список 2.exe" (Win32). Загружено "C:\Users\Владислав\Documents\Visual Studio 2012\Projects\Односвязный список...

Односвязный список - C++
Здравствуйте! Кто может разъяснить как вставить в узел заданного места значение.. 1. Нужно выделить память Elem *Ins = new Elem ...

Односвязный список - C++
Есть связной список. У класса есть метод добавления элементов(additem()). Надо исправить метод, чтобы он добавлял элемент не в начало, а в...


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

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

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