LL vs. Map

Anfängerfragen zum Programmieren mit PureBasic.
Benutzeravatar
Delle
Beiträge: 1162
Registriert: 10.05.2005 22:48

LL vs. Map

Beitrag von Delle »

Hallo,

ich habe i.d.R. immer aus Gewohnheit LLs benutzt.

Nun sehe ich aber, dass ich Elemente bei Maps einfach direkt "anspringen" und abfragen kann,
wo hingegen ich bei LLs immer erst mit einer Schleife zum gewünschen Element durchlaufen lassen muss...

Ist daher ein einfacher Wechsel zu Maps möglich? Die Sortierungsmöglichkeiten scheint es da aber wohl nicht zu geben...
PB 6.30 | Win 11
Benutzeravatar
TroaX
Beiträge: 720
Registriert: 08.03.2013 14:27
Computerausstattung: PC: Ryzen 9 3950X, 96 GB RAM, RX6800XT, 2.5 TB SSD, 21:9 Display, Linux Mint | Lappi: Ryzen 7 5800H, 16 GB RAM, 1 TB SSD, Linux Mint
Wohnort: NRW
Kontaktdaten:

Re: LL vs. Map

Beitrag von TroaX »

Naja warum sortieren? Der Witz an einer Map ist, das man die Elemente mit ihrem Namen abfragen kann, während du bei einer Liste immer die Elementnummer nutzen musst. Du kannst auch eine Structure benutzen und die Listenelemente mit einem zusätzlichen Bezeichner ausstatten. Du musst zwar das Element erst suchen, hast aber die Funktionen einer Liste zur Verfügung.
PC: Ryzen 9 3950X | 96 GB RAM | RX6800XT | 2,5 TB NVMe | Linux Mint
Notebook: 16" 3:2 | Ryzen 7 5800H | 16 GB RAM | Radeon Vega | 1TB NVMe | Linux Mint
NAS: N150 Mini-PC | 16 GB RAM | Debian 13+CasaOS
Coding: Purebasic, Spiderbasic, GDevelop, PHP
Blog: https://techtroax.de
Repos: https://codeberg.org/TroaX
Benutzeravatar
Delle
Beiträge: 1162
Registriert: 10.05.2005 22:48

Re: LL vs. Map

Beitrag von Delle »

Ich hab eine LL für Sprites genommen, da die aktuelle Figur immer VOR allen anderen sein soll:

Code: Alles auswählen

SortStructuredList(Figuren(), #PB_Sort_Descending, OffsetOf(Figuren\fokus), TypeOf(Figuren\fokus))
Für Hintergründe brauch ich das aber nicht, da ja eh immer nur einer im "Vordergrund" ist ;)

Den möchte ich aber direkt ansprechen, sprich Gadget -> LL/Map -> Anzeige.

Und da wäre wohl eine Map angebracht, da direkte Auswahl möglich und Sortierung überflüssig.
PB 6.30 | Win 11
Benutzeravatar
NicTheQuick
Ein Admin
Beiträge: 8837
Registriert: 29.08.2004 20:20
Computerausstattung: Ryzen 7 5800X, 64 GB DDR4-3200
Ubuntu 24.04.2 LTS
GeForce RTX 3080 Ti
Wohnort: Saarbrücken

Re: LL vs. Map

Beitrag von NicTheQuick »

Wäre es dann nicht effizienter separate Listen für Hintergrund, Sprites und Figuren zu nehmen und diese dann auch in dieser Reihenfolge zu zeichnen? Wenn du sonst jedes Mal die ganze Liste sortierst, obwohl nur bei der Figur wichtig ist, dass sie über allem gezeichnet wird, dann kannst du dir das somit sparen.
Antworten