Linked List
Übersicht

girglBetreff: Linked List |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Hi,ich will mit einer Linked List arbeiten und hab folgenden Typen
Code: [AUSKLAPPEN] Type bla field x,y field test.test end type type test field muh$ end type wie kann ich jetz alle objekte des types abfragen mit for each? |
||
![]() |
TheShadowModerator |
![]() Antworten mit Zitat ![]() |
---|---|---|
field test.test
kann nur zu einem Objekt linken - so ähnlich wie ein Link in HTML - du kannst nicht ein Link zu 10 Objekten setzen Dadurch erübrigt sich die Abfrage mit for/each Wenn du mehrere Objekte zuweisen willst, dann musst du entw. BLITZARRAYS benutzen oder Banks (und dort handles speichern) |
||
AMD64 3500+ | GeForce6600GT 128MB | 1GB DDR | WinXPsp2 |
![]() |
Arcanes |
![]() Antworten mit Zitat ![]() |
---|---|---|
Natürlich kannst Du mit for each jetzt alle Objekte der Types abfragen, warum sollte das plötzlich nicht mehr gehen?
Aber wenn Du nur alle Test-Typen zugehörig zum bla-Type abfragen willst (mal vorausgesetzt, es soll möglich sein, mehrere Test-Typen einem bla-Type zuzuordnen), dann musst Du entweder: a) bla\test als Array erstellen. Also bspw. --> field test.test[10], dann könntest Du bis zu 11 Test-Typen einem Bla-Type zuordnen! oder: b) dem test-Type ein Bla-Type-Handle verpassen. Zb.: Field bla_handle.bla (oder wie ich es immer mache: parent.bla). Dann kannste mit 'ner For Each auch alle test-Types in abhängigkeit eines Bla-Parents auswählen ^^ Oder hattest Du was anderes mit Deiner Frage gemeint? ![]() |
||
tHey pUt mE iN a rOuNd rOom tO diE
User posted image http://www.myownmalice.de.vu |
girgl |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
also ich denke das swas du mit zweiterer variante meinst,mit dem parent sollte das sein was ich brauche.
den est-type könnte man z.B,. vergleichen mit type firma und der bla-type wäre dann mitglied. Dann möcht ich halt das man das so abfragen kann Code: [AUSKLAPPEN] type firma field soundso field mitglied.mitglied end type type mitglied field name$ ... end type for firma\mitglied.mitglied=each mitglied <--- Fehler tu das und das next das problem is das in der zeile immer ein fehler auftaucht,dass ein next oder sonstiges fehlt.Ich würd gern wissen,wie ich die for each schleife richtig schreiben müsste,damit der fehler behoben is |
||
![]() |
TheShadowModerator |
![]() Antworten mit Zitat ![]() |
---|---|---|
du musst firma erstellen:
local f.firma=new firma dann bringst du es zum laufen - wird jedoch WIE ICH GESAGT HABE nicht den gewünschten effekt haben |
||
AMD64 3500+ | GeForce6600GT 128MB | 1GB DDR | WinXPsp2 |
girgl |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
ja schon klar,das ich das erstellen muss,hab ich ja auch gemacht,aber danach kam ja der fehler...vielleicht sollt ich mir ne andere lösung überlegen | ||
![]() |
Jolinah |
![]() Antworten mit Zitat ![]() |
---|---|---|
Arcanes meinte wohl eher sowas:
Code: [AUSKLAPPEN] Type bla
Field x,y Field test.test End Type Type test Field parent.bla Field muh$ End Type For i = 0 to 9 a.bla = new bla a\x = rand(0,100) a\y = rand(0,100) a\test = new test a\test\muh$ = "....." a\test\parent = a ;Setzt a als Parent dieses Test Objekts Next a = AFTER FIRST bla ;Zweites Objekt in der Liste auswählen For t.test = each test If t\parent = a then count = count + 1 Next Graphics 800,600,16,2 Text 10,10, count + " Test Objekte gefunden die zu dem ausgewählten bla gehören" WaitKey() End Das gibt allerdings nicht viel Sinn, weil ja immer nur 1 test Objekt zum bla Objekt gehört. Code: [AUSKLAPPEN] Type bla
Field x, y Field test.test[9] End Type Type test Field parent.bla Field muh$ End Type For i = 0 To 9 a.bla = New bla a\x = Rand(0,100) a\y = Rand(0,100) For k = 0 to 9 a\test[k] = New test a\test[k]\muh$ = "....." a\test[k]\parent = a ;Setzt a als Parent dieses Test Objekts Next Next a = After First bla ;Zweites Objekt in der Liste auswählen For t.test = Each test If t\parent = a Then count = count + 1 Next Graphics 800,600,16,2 Text 10,10, count + " Test Objekte gefunden die zu dem ausgewählten bla gehören" WaitKey() End In dem obigen Beispiel gehören immerhin 10 test Objekte zu einem bla Objekt. Jedoch ist es fraglich ob man die test Objekte so abfragen will, mann könnte auf die test Objekte auch per Blitzarray Index zugreifen: Code: [AUSKLAPPEN] ;Einzelne Abfrage a\test[0]\muh$ a\test[1]\muh$ ... usw.. ;Schleifenabfrage For i = 0 to 9 a\test[i]\muh$ Next |
||
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group