![]() |
|
Модераторы: Daevaorn |
![]()
|
|
| rang3r |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 61 Регистрация: 2.4.2009 Репутация: нет Всего: нет |
Ребята, помогите плз! никак не могу въехать! надо реализовать двунаправленный кольцевой список из объектов класса, потом добавлять, искать, удалять элементы! я набил формирование и добавление но ни4е не работает, подскажите где ошибка.
#include <iostream.h> #include <conio.h> #include <stdio.h> #include <stdlib.h> typedef struct Link *List; void Write_List(List pt_lst); class Card { int nomer; char *street; int etazhi; char *opisanie; public: Card() { setNomer(); setStreet(); setEtazhi(); setOpisanie(); } void show() { cout<<nomer<<"\n"; cout<<street<<"\n"; cout<<etazhi<<"\n"; cout<<opisanie<<"\n"; } void setNomer() { cout<<"\n Nomer: "; cin>>nomer; } void setStreet() { cout<<"\n Ulitsa: "; gets(street); } void setEtazhi() { cout<<"Kol-vo etazhei: "; cin>>etazhi; } void setOpisanie() { cout<<"Opisanie: "; gets(opisanie); } }; Card New_Card_f(); struct Link { Card data; struct Link *next; struct Link *last; }; List Add_List(List pt_card); void Add_After(List pt); void main() { List lst; Add_List(lst); Write_List(lst); } List Add_List(List pt_card) { List pt_new; Card new_card; pt_new=(List)calloc(1,sizeof(Link)); pt_new->data=new_card; pt_new->next=pt_card->last; pt_card->next=pt_new; pt_new->last=pt_card; pt_card=pt_new; return pt_card; } Card New_Card_f() { Card new_cartochka; return new_cartochka; } void Write_List(List pt_lst) { int i; pt_lst->data.show(); pt_lst=pt_lst->next; } void Add_After(List pt) { List pt_new; Card new_card; pt_new=(List)calloc(1,sizeof(Link)); pt_new->data=new_card; pt->last->next=pt_new; pt_new->last=pt->last; pt_new->next=pt; pt->last=pt_new; } |
|||
|
||||
| Anikmar |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2513 Регистрация: 26.11.2006 Где: Санкт-Петербург Репутация: 9 Всего: 59 |
Во-первых: Оформите, пожалуйста, код тегами "Код" - когда набираете сообщение, там есть кнопка "Код"
Во-вторых: Что за структура Link - покажите ее описание. |
|||
|
||||
| zim22 |
|
|||
|
depict1 ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2682 Регистрация: 15.1.2009 Где: Украина Репутация: 24 Всего: 69 |
Anikmar, вот она. с трудом, но я нашёл её!
|
|||
|
||||
| andrew_121 |
|
|||
![]() Кодофей ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3448 Регистрация: 3.1.2008 Репутация: 6 Всего: 33 |
Ужасно. Почему отвечающие должны ломать глаза выпяливая чужой код? Возмутительно Уважаемые!!!
-------------------- Удалил аккаунт. Прощайте! |
|||
|
||||
| zim22 |
|
|||
|
depict1 ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2682 Регистрация: 15.1.2009 Где: Украина Репутация: 24 Всего: 69 |
andrew_121, я уже привык. У меня в Опере и код с тегом CODE и без него отображаются одинаково хреново
|
|||
|
||||
| andrew_121 |
|
|||
![]() Кодофей ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3448 Регистрация: 3.1.2008 Репутация: 6 Всего: 33 |
zim22, Firefox respect!
-------------------- Удалил аккаунт. Прощайте! |
|||
|
||||
| zim22 |
|
|||
|
depict1 ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2682 Регистрация: 15.1.2009 Где: Украина Репутация: 24 Всего: 69 |
andrew_121, особенно если набрать в адресной строке about:mozilla about:robots |
|||
|
||||
| inside_pointer |
|
||||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 344 Регистрация: 9.3.2008 Репутация: 5 Всего: 12 |
struct Link должен существовать, то есть должен быть описан структурный тип с меткой Link до определения нового типа в виде указателя на него
для чего там i, почему нет цикла ? |
||||
|
|||||
| zim22 |
|
|||
|
depict1 ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2682 Регистрация: 15.1.2009 Где: Украина Репутация: 24 Всего: 69 |
||||
|
||||
| hente |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 116 Регистрация: 20.3.2009 Где: Томск Репутация: нет Всего: нет |
ничего не понял решил сделать так для начала:
а ведь я на это потратил минут 15 а мог уже помочь ... хотя дело ваше если честно собсно теперь посмотрим что тут делается.... --------------------
долой быдло кодеров!!! |
|||
|
||||
| inside_pointer |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 344 Регистрация: 9.3.2008 Репутация: 5 Всего: 12 |
это когда-то запомнил насчёт typedef и всегда придерживался, действительно typedef'у всё равно, где тип до или после
update: главное, что объявлению не всё равно, существует ли тип для объекта или нет
то есть, не смотря на то, что тип определён через typedef, он не срабатывает до объявления типа, на котором он основан Это сообщение отредактировал(а) inside_pointer - 2.4.2009, 11:52 |
|||
|
||||
| zim22 |
|
|||
|
depict1 ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2682 Регистрация: 15.1.2009 Где: Украина Репутация: 24 Всего: 69 |
вот тут ещё маленький мануал по тайпдефам, если интересно http://forum.vingrad.ru/forum/topic-250681.html |
|||
|
||||
| andrew_121 |
|
|||
![]() Кодофей ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3448 Регистрация: 3.1.2008 Репутация: 6 Всего: 33 |
Гм... Набрал. Прочитал. Завис... Сорри что не по теме, но кто понимает истинное назначение сего текста, и каков его смысл? -------------------- Удалил аккаунт. Прощайте! |
|||
|
||||
| Vaulter |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1724 Регистрация: 30.12.2002 Где: бункер Репутация: 2 Всего: 22 |
http://ru.wikipedia.org/wiki/Easter_egg |
|||
|
||||
| zim22 |
|
||||
|
depict1 ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2682 Регистрация: 15.1.2009 Где: Украина Репутация: 24 Всего: 69 |
Можно объявить указатель на этот тип:
|
||||
|
|||||
| inside_pointer |
|
||||||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 344 Регистрация: 9.3.2008 Репутация: 5 Всего: 12 |
вот такая штука сработала, вообще без создания объекта
а такая выдала предупрежение
то есть это считается неполный тип, что показал zim22 Это сообщение отредактировал(а) inside_pointer - 2.4.2009, 23:18 |
||||||
|
|||||||
| mes |
|
|||
|
любитель ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7954 Регистрация: 14.1.2006 Репутация: 144 Всего: 250 |
фактически это сокращенная запись следующего :
где первая строчка является предопределением, что и есть неполный тип . |
|||
|
||||
| inside_pointer |
|
||||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 344 Регистрация: 9.3.2008 Репутация: 5 Всего: 12 |
дополнение типа прокатывает нельзя создать переменную неполного типа говорит
что типа размер не может определить и если тип создан, то дальше его уже не расширить, говорит повторное определение Это сообщение отредактировал(а) inside_pointer - 3.4.2009, 00:25 |
||||
|
|||||
| mes |
|
|||
|
любитель ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7954 Регистрация: 14.1.2006 Репутация: 144 Всего: 250 |
есть предопределение и определение типа, а не расширение/дополнение, предопределение может повторяться множество раз, а определение должно быть одним. |
|||
|
||||
| inside_pointer |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 344 Регистрация: 9.3.2008 Репутация: 5 Всего: 12 |
ну определение занимает память, потом как бы переопределение не может её удалить и получается, что нет такой возможности, а объявление неполного типа регистрирует его в списке типов (как представляю)
|
|||
|
||||
| mes |
|
|||
|
любитель ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7954 Регистрация: 14.1.2006 Репутация: 144 Всего: 250 |
грубо да, предопределение регистрирует в списке типов; определение формирует(задает характеристики) тип; переопределение вызывает ошибку, так как тип сформирован; Это сообщение отредактировал(а) mes - 3.4.2009, 03:05 |
|||
|
||||
![]()
|
| Правила форума "С++:Общие вопросы" | |
|
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |