Списки данных
Как организовать списки? стеки/очереди?
гугл ничо вразумительного не говорит. |
Re: Списки данных
смотри STL =) std::list, std::vector, std::map, std::hash_map, std::queue, std::stack и еще куча всякого добра =)
или те руками нада? =) |
Re: Списки данных
руками надо
|
Re: Списки данных
А в чем проблема?
|
Re: Списки данных
ну руками смотри в сторону связанных списков =)
он чо-то типа этого: Код:
template<typename _Ty> З.Ы. ммм, а зачем вообще те руками писать? =) чем стандартные не устраивают? |
Re: Списки данных
http://www.boolean.name/showthread.php?t=1253 ну вот жеш. разве не то? принцип один и тот же
|
Re: Списки данных
все потихоньку на С++ переходят...
|
Re: Списки данных
Цитата:
|
Re: Списки данных
Вложений: 2
вот моя реализация однонаправленного списка, стека и очереди на его основе. Может, где-то криво, но работает.
|
Re: Списки данных
Magus
Неплохо. Осталось написать поиск и обобщить с помощью шаблонов) |
Re: Списки данных
еще вопросы:
1 - чем хороши шаблоны? 2 - как с помощью них обобщать? |
Re: Списки данных
Используя шаблон, не нужно привязываться к определенному типу.
Если, например, список написать при помощи шаблонов, можно будет создать списки любого типа, включая типы, определенные пользователем. Так в STL сделано. И это единственно верный вариант. |
Re: Списки данных
|
Re: Списки данных
Вот моя реализация двунаправленных списков (отдельная спасиба Магусу за понятный и красивый код):
Код:
#include "stdafx.h" Код:
for (item* e=l.first;e;e=e->next) собственно вопрос (с которыми я наверное уже вас всех достал): есть класс item. у него поле данных int x; так вот, если мне необходимо чтоб у него были поля другого типа (да и другое количество) ? есть идея - создать класс на основе класса item, например: Код:
class bullet : item может его зашаблонить? list я имею ввиду, тогда можн перегружть item как надо, чтобы можно было организовать свою структуру любой сложности. |
Re: Списки данных
как раз надо использовать шаблоны =)
например: Код:
template<typename _Ty> Код:
template<typename _Ty> Код:
list<int> list1; |
Часовой пояс GMT +4, время: 16:23. |
vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot