|
PureBasic Мощный кросс-платформенный язык среднего уровня на основе BASIC. Подходит для решения широкого круга задач. |
06.01.2008, 22:45
|
#1
|
|
Мнгновенный доступ к элементу списка в Пурике - как?
Мнгновенный доступ к элементу списка в Пурике - как?
Собственно сабж... как это делаецца на пурике?
|
|
|
06.01.2008, 23:59
|
#2
|
Мастер
Регистрация: 19.03.2007
Сообщений: 1,039
Написано 153 полезных сообщений (для 252 пользователей)
|
Re: Мнгновенный доступ к элементу списка в Пурике - как?
SelectElement(mylist(), нужный_узел_списка)
счет идет с нуля
http://www.purebasic.com/documentati...ist/index.html
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
07.01.2008, 11:43
|
#3
|
Знающий
Регистрация: 04.08.2006
Адрес: Россия
Сообщений: 297
Написано 39 полезных сообщений (для 70 пользователей)
|
Ответ: Мнгновенный доступ к элементу списка в Пурике - как?
"SelectElement" не дает возможности мгновенного доступа к списку, он перебирает список пока не найдет элемент с нужным индексом
Используй "ChangeCurrentElement" передавая адрес нужного элемента, или используй динамический массив "Dim" ссылок в качестве списка.
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
07.01.2008, 12:06
|
#4
|
Мастер
Регистрация: 19.03.2007
Сообщений: 1,039
Написано 153 полезных сообщений (для 252 пользователей)
|
Re: Ответ: Мнгновенный доступ к элементу списка в Пурике - как?
Сообщение от Cyan
используй динамический массив "Dim" ссылок в качестве списка.
|
а поподробней...
|
(Offline)
|
|
07.01.2008, 12:16
|
#5
|
|
Ответ: Мнгновенный доступ к элементу списка в Пурике - как?
Все-таки рано ты меня выгнать захотел):
; Начальная инициализация:
NewList Your_List()
Dim *Pointers(0)
; Заполнение списка данными[
; ]заполнение списка данными.
ReDim *Pointers(CountList(Your_List()))
ForEach Your_List()
*Pointers(ListIndex(Your_List())) = @Your_List()
Next
; Теперь, когда нужен переход по индексу:
ChangeCurrentElement(Your_List(), *Pointers(Index))
|
|
|
Сообщение было полезно следующим пользователям:
|
|
07.01.2008, 12:30
|
#6
|
Мастер
Регистрация: 19.03.2007
Сообщений: 1,039
Написано 153 полезных сообщений (для 252 пользователей)
|
Re: Мнгновенный доступ к элементу списка в Пурике - как?
НО-НО! я никого не хотел выгонять и нет у меня таких прав, а если б были , то Я нашел бы кого выгнать, с четким предлогом и без всяких оправданий и объяснений. )))
|
(Offline)
|
|
07.01.2008, 15:49
|
#7
|
Знающий
Регистрация: 04.08.2006
Адрес: Россия
Сообщений: 297
Написано 39 полезных сообщений (для 70 пользователей)
|
Ответ: Мнгновенный доступ к элементу списка в Пурике - как?
Chrono Syndrome
Можно и так, но я имел ввиду использовать массив вместо списка, если нужен быстрый доступ по индексу.
|
(Offline)
|
|
07.01.2008, 22:42
|
#8
|
Мастер
Регистрация: 19.03.2007
Сообщений: 1,039
Написано 153 полезных сообщений (для 252 пользователей)
|
Re: Мнгновенный доступ к элементу списка в Пурике - как?
Вообще по С я привык, что размер массива, четко задается в начале программы константным значением. Если в Пурике массив динамический, что видимо так, то вполне вероятно доступ по индексу массива быстрее, чем доступ через двусвязный список.
|
(Offline)
|
|
08.01.2008, 15:19
|
#9
|
|
Ответ: Мнгновенный доступ к элементу списка в Пурике - как?
Если в Пурике массив динамический, что видимо так
|
Угу, кроме тех, что в структурах.
|
|
|
08.01.2008, 20:18
|
#10
|
|
Ответ: Мнгновенный доступ к элементу списка в Пурике - как?
Пасибо чуваки, разобралсо, вроде...=)
Насчет высказывания Платона про SelectElement() - я так подозреваю, что блицевский Object() - работает аналогичным методом, ибо один и тот же код на пурике с SelectElement() работает на 20% быстрее, чем на блитце с Object(). Разницу можно переложить на скорость выполнения логики в Пуре.
|
|
|
08.01.2008, 20:45
|
#11
|
Мастер
Регистрация: 19.03.2007
Сообщений: 1,039
Написано 153 полезных сообщений (для 252 пользователей)
|
Re: Мнгновенный доступ к элементу списка в Пурике - как?
Diablo1909, давай тесты, которые гонял на Пурике и БлицМаксе со списками. Какие версии, хочу сам проверить... А то пожалуй перейду на Пурик раз он такой шустрый. Тут как раз обещали (кое-кто) КМБ по Пурику...
|
(Offline)
|
|
Ваши права в разделе
|
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 04:06.
|