type liste in type objekt

Übersicht BlitzBasic Allgemein

Neue Antwort erstellen

 

da_poller

Betreff: type liste in type objekt

BeitragSo, März 29, 2009 19:37
Antworten mit Zitat
Benutzer-Profile anzeigen
ich habe einen type der bestimmte nodes repräsentiert.

in jeder node möchte ich gerne eine liste von 1-30 type objekten anhängen(menge variiert)

ist dies in b3d überhaupt möglcih wenn ja wie? komm irgendwie auf keine funktionierende lösung...

jeder denkansatz wäre hilfreich

lg poller

coolo

BeitragSo, März 29, 2009 19:44
Antworten mit Zitat
Benutzer-Profile anzeigen
Wenn esmaximal 30 sind kann man das in einem BlitzArray speichern (field blubb.Tblubb[30])
Ansonsten wenn es variabel ist könnte man eine Art List mit Banks erstellen. Also jedes Objekt per handle in einen Interger umwandeln und mit object wieder zurück.
http://programming-with-design.at/ <-- Der Preis ist heiß!
That's no bug, that's my project!
"Eigenzitate sind nur was für Deppen" -Eigenzitat
 

da_poller

BeitragSo, März 29, 2009 19:44
Antworten mit Zitat
Benutzer-Profile anzeigen
wieviel es wird hängt ganz von der spielzeit ab.. werte von 100 sind am ende durchaus möglich...

Xeres

Moderator

BeitragSo, März 29, 2009 19:55
Antworten mit Zitat
Benutzer-Profile anzeigen
Gib jedem Objekt die Information mit, zu welchem Node er gehört... Kleines Beispiel?

Code: [AUSKLAPPEN]
Type TEltern
    Field Vater$, Mutter$
End Type

Type TKinder
    Field Name$
    ;* Hier drin wird gespeichert, wer die Eltern sind:
    Field Eltern.TEltern
End Type

;* Nach dem Erstellen der Eltern, wird den Kindern mitgegeben,
;* zu welchen Eltern sie gehören.
Local Simpsons.TEltern = Eltern_Create("Homer", "Marge")
Local Bart.TKinder = Kinder_Create("Bart", Simpsons)
Local Lisa.TKinder = Kinder_Create("Lisa", Simpsons)
Local Maggie.TKinder = Kinder_Create("Maggie", Simpsons)

Local Flanders.TEltern = Eltern_Create("Ned", "Maude")
Local Rod.TKinder = Kinder_Create("Rod", Flanders)
Local Todd.TKinder = Kinder_Create("Todd", Flanders)

Familien_Info(Flanders)
Familien_Info(Simpsons)

Waitkey()
End

Function Eltern_Create.TEltern(fV$, fM$)
    Local e.TEltern = New TEltern
    e\Vater$ = fV$
    e\Mutter$ = fM$
    Return e
End Function

Function Kinder_Create.TKinder(fname$, fE.TEltern)
    Local k.TKinder = New TKinder
    k\Name$ = fname$
    k\Eltern = fE
    Return k
End Function

Function Familien_Info(E.TEltern)
    Local k.TKinder
    Print(E\Vater+" und "+ E\Mutter+" haben zusammen diese Kinder:")
    ;* Um nun die passenden Einträge in allen TKinder zu finden, müssen alle
    ;* Type-Einträge durchgegangen werden. Erst wenn die gesuchten Eltern
    ;* gefunden wurden, arbeiten wir damit:
    For k = Each TKinder
        If k\Eltern = E Then
            Print(k\Name)
        Endif
    Next
    Print("------------")
End Function
Win10 Prof.(x64)/Ubuntu 16.04|CPU 4x3Ghz (Intel i5-4590S)|RAM 8 GB|GeForce GTX 960
Wie man Fragen richtig stellt || "Es geht nicht" || Video-Tutorial: Sinus & Cosinus
T
HERE IS NO FAIR. THERE IS NO JUSTICE. THERE IS JUST ME. (Death, Discworld)

Neue Antwort erstellen


Übersicht BlitzBasic Allgemein

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group