Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   forum.boolean.name > Программирование игр для компьютеров > Blitz3D > 3D-программирование

3D-программирование Вопросы, касающиеся программирования 3D мира

Ответ
 
Опции темы
Старый 06.03.2007, 19:54   #1
AnRee
Нуждающийся
 
Регистрация: 11.09.2005
Сообщений: 92
Написано 0 полезных сообщений
(для 0 пользователей)
Тип в типе

Заинтересован этой темой, никто не знает где прочитать об этом, или статьи есть какие нить?
(Offline)
 
Ответить с цитированием
Старый 06.03.2007, 21:51   #2
ЛысыЙ_Чук-Иванчук
Дэвелопер
 
Регистрация: 19.03.2006
Сообщений: 1,241
Написано 10 полезных сообщений
(для 17 пользователей)
Re: Тип в типе

Собна зачем это надо
(Offline)
 
Ответить с цитированием
Старый 06.03.2007, 21:53   #3
impersonalis
Зануда с интернетом
 
Аватар для impersonalis
 
Регистрация: 04.09.2005
Сообщений: 14,014
Написано 6,798 полезных сообщений
(для 20,935 пользователей)
Re: Тип в типе

[blitz]
Const MSIZE=4

Type MASTER
Field ID%
Field CHILD.SLAVE[MSIZE]
End Type

Type SLAVE
Field ID%
End Type

;===
Local j=1
Local z=0
M.MASTER=New MASTER
M\ID=j

For i=1 To 15
M\CHILD[z]=New SLAVE
M\CHILD[z]\ID=i
If z=MSIZE
j=j+1
M.MASTER=New MASTER
M\ID=j
z=0
EndIf
z=z+1
Next
;===
For m.master=Each master
Print "master (ID="+m\ID+") :"
For i=1 To MSIZE
If m\CHILD[i]=Null Exit
Print " child (ID="+m\CHILD[i]\ID+")"
Next
Next
[/blitz]
__________________
http://nabatchikov.com
Мир нужно делать лучше и чище. Иначе, зачем мы живем? tormoz
А я растила сына на преданьях
о принцах, троллях, потайных свиданьях,
погонях, похищениях невест.
Да кто же знал, что сказка душу съест?
(Offline)
 
Ответить с цитированием
Старый 07.03.2007, 01:38   #4
HolyDel
 
Регистрация: 26.09.2006
Сообщений: 6,035
Написано 1,474 полезных сообщений
(для 2,707 пользователей)
Re: Тип в типе

я так думаю что внутренних элементов может быть неопределенное кол-во.
хз кк ето сделать, но скоре всего как-раз через ID мастер, и перебирать все равно все Slav-ы сравнивать ид с ид мастера и делать нужные действия.
(Offline)
 
Ответить с цитированием
Старый 07.03.2007, 02:15   #5
impersonalis
Зануда с интернетом
 
Аватар для impersonalis
 
Регистрация: 04.09.2005
Сообщений: 14,014
Написано 6,798 полезных сообщений
(для 20,935 пользователей)
Re: Тип в типе

Я просто не стал усложнять пример.
Вот:
http://www.boolean.name/showthread.php?t=1253
__________________
http://nabatchikov.com
Мир нужно делать лучше и чище. Иначе, зачем мы живем? tormoz
А я растила сына на преданьях
о принцах, троллях, потайных свиданьях,
погонях, похищениях невест.
Да кто же знал, что сказка душу съест?
(Offline)
 
Ответить с цитированием
Старый 07.03.2007, 02:21   #6
Platon
Знающий
 
Регистрация: 04.08.2006
Адрес: Россия
Сообщений: 297
Написано 39 полезных сообщений
(для 70 пользователей)
Re: Тип в типе

Все дело в том, что в Блиц может быть только одна коллекция(список) обьектов одного типа. Поэтому есть несколько вариантов:
-использовать массив указателей, как привели выше.
-использовать указатель на начло и конец, вроде резервирования некотрого участка списка ограниченного этими указателями.
-писать свой 1\2 направленный список.
-еще какой-нить вариант
(Offline)
 
Ответить с цитированием
Старый 07.03.2007, 02:25   #7
impersonalis
Зануда с интернетом
 
Аватар для impersonalis
 
Регистрация: 04.09.2005
Сообщений: 14,014
Написано 6,798 полезных сообщений
(для 20,935 пользователей)
Re: Тип в типе

В статье - как раз про списки.
__________________
http://nabatchikov.com
Мир нужно делать лучше и чище. Иначе, зачем мы живем? tormoz
А я растила сына на преданьях
о принцах, троллях, потайных свиданьях,
погонях, похищениях невест.
Да кто же знал, что сказка душу съест?
(Offline)
 
Ответить с цитированием
Старый 10.12.2012, 03:47   #8
CRASHER
Разработчик
 
Регистрация: 08.03.2007
Сообщений: 530
Написано 31 полезных сообщений
(для 36 пользователей)
Ответ: Тип в типе

Извините за откапывание темы, но вот тип в типе заинтересовал. В примере импера перечисление подтипов начинается со второго подтипа, первый же не отображается. Если начинать счет с нуля то он появляется, однако после второго типа(мастера) уже ни один не отображается, в чем дело? Видемо запись происходит первого в нулевой i, но я не пойму почему.
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
impersonalis (10.12.2012)
Старый 10.12.2012, 13:26   #9
impersonalis
Зануда с интернетом
 
Аватар для impersonalis
 
Регистрация: 04.09.2005
Сообщений: 14,014
Написано 6,798 полезных сообщений
(для 20,935 пользователей)
Ответ: Тип в типе

Сообщение от CRASHER Посмотреть сообщение
Извините за откапывание темы, но вот тип в типе заинтересовал. В примере импера перечисление подтипов начинается со второго подтипа, первый же не отображается. Если начинать счет с нуля то он появляется, однако после второго типа(мастера) уже ни один не отображается, в чем дело? Видемо запись происходит первого в нулевой i, но я не пойму почему.
Стоило писать:
 Local z=1
Вся путаница, что для совместимости в блитце можно использовать индексацию и с 0, и с 1.
Local x%[2]
For i=0 To 2
	x[i]=i+1
Next
For i=0 To 2
	Print x[i]
Next
Т.е. когда вы пишите Local x%[SIZE] выделяется на самом деле банк под SIZE+1 элемент, чт позволяет индексировать их как [0;SIZE-1], так и [1;SIZE] и т.п.
__________________
http://nabatchikov.com
Мир нужно делать лучше и чище. Иначе, зачем мы живем? tormoz
А я растила сына на преданьях
о принцах, троллях, потайных свиданьях,
погонях, похищениях невест.
Да кто же знал, что сказка душу съест?
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
CRASHER (11.12.2012)
Старый 13.12.2012, 19:08   #10
MiXaeL
Бывалый
 
Аватар для MiXaeL
 
Регистрация: 22.08.2006
Сообщений: 700
Написано 146 полезных сообщений
(для 267 пользователей)
Ответ: Тип в типе

Сразу скажу, что все (2007 года) не читал, но тип в типе в блице не реализуется по классике.
Т.е. ты получишь просто два линейных списка и дальше можешь уже как-то сам между ними устанавливать взаимоотношения. А про индексирование это вообще кошмар. Я, выросший на бейсиках, не раз путался в с этим делом в нормальных языках. Так что советую сразу потратить время на С++\С#\Java... Пользы больше на порядок (да и возможностей).
(Offline)
 
Ответить с цитированием
Старый 13.12.2012, 21:06   #11
impersonalis
Зануда с интернетом
 
Аватар для impersonalis
 
Регистрация: 04.09.2005
Сообщений: 14,014
Написано 6,798 полезных сообщений
(для 20,935 пользователей)
Ответ: Тип в типе

В MATLAB и долбанном SMathStudio, например индексация с 1.
А в Mathcad с 0.
ЕМНИП, как-то препод обронил, что мол выбор первого индекса зависит от считающего: математик или логик.
__________________
http://nabatchikov.com
Мир нужно делать лучше и чище. Иначе, зачем мы живем? tormoz
А я растила сына на преданьях
о принцах, троллях, потайных свиданьях,
погонях, похищениях невест.
Да кто же знал, что сказка душу съест?
(Offline)
 
Ответить с цитированием
Ответ


Опции темы

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Массивы в типе DStalk 2D-программирование 15 03.01.2010 22:45
Тип в типе & etc... ELIAS Blitz3D 9 30.03.2009 23:09
полу реал-тиме поиск пути jimon Алгоритмика 4 29.11.2005 00:21


Часовой пояс GMT +4, время: 00:45.


vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com