Тип в типе
Заинтересован этой темой, никто не знает где прочитать об этом, или статьи есть какие нить?:)
|
Re: Тип в типе
Собна зачем это надо:)
|
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] |
Re: Тип в типе
я так думаю что внутренних элементов может быть неопределенное кол-во.
хз кк ето сделать, но скоре всего как-раз через ID мастер, и перебирать все равно все Slav-ы сравнивать ид с ид мастера и делать нужные действия. |
Re: Тип в типе
|
Re: Тип в типе
Все дело в том, что в Блиц может быть только одна коллекция(список) обьектов одного типа. Поэтому есть несколько вариантов:
-использовать массив указателей, как привели выше. -использовать указатель на начло и конец, вроде резервирования некотрого участка списка ограниченного этими указателями. -писать свой 1\2 направленный список. -еще какой-нить вариант :) |
Re: Тип в типе
В статье - как раз про списки.
|
Ответ: Тип в типе
Извините за откапывание темы, но вот тип в типе заинтересовал. В примере импера перечисление подтипов начинается со второго подтипа, первый же не отображается. Если начинать счет с нуля то он появляется, однако после второго типа(мастера) уже ни один не отображается, в чем дело? Видемо запись происходит первого в нулевой i, но я не пойму почему.
|
Ответ: Тип в типе
Цитата:
Код:
Local z=1 Код:
Local x%[2] |
Ответ: Тип в типе
Сразу скажу, что все (2007 года) не читал, но тип в типе в блице не реализуется по классике.
Т.е. ты получишь просто два линейных списка и дальше можешь уже как-то сам между ними устанавливать взаимоотношения. А про индексирование это вообще кошмар. Я, выросший на бейсиках, не раз путался в с этим делом в нормальных языках. Так что советую сразу потратить время на С++\С#\Java... Пользы больше на порядок (да и возможностей). |
Ответ: Тип в типе
В MATLAB и долбанном SMathStudio, например индексация с 1.
А в Mathcad с 0. ЕМНИП, как-то препод обронил, что мол выбор первого индекса зависит от считающего: математик или логик. |
Часовой пояс GMT +4, время: 15:20. |
vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot