JLI Spieleprogrammierung Foren-Übersicht JLI Spieleprogrammierung

 
 FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen 
 medals.php?sid=15501cc46d714a537d410b974c86105fMedaillen   RegistrierenRegistrieren   ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin 

verketteten Listen

 
Neues Thema eröffnen   Neue Antwort erstellen    JLI Spieleprogrammierung Foren-Übersicht -> Entwicklung
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
Florian
Super JLI'ler


Alter: 36
Anmeldedatum: 20.06.2003
Beiträge: 302

Medaillen: Keine

BeitragVerfasst am: 17.07.2003, 10:18    Titel: verketteten Listen Antworten mit Zitat

Benötigt man die verketteten Listen bei der Spieleprogrammierung.
Wenn ja wo.

Danke.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden MSN Messenger
Mr.X
Junior JLI'ler



Anmeldedatum: 15.04.2003
Beiträge: 88

Medaillen: Keine

BeitragVerfasst am: 17.07.2003, 10:51    Titel: Antworten mit Zitat

Verkettete Listen haben nichts mit der (Spiele-)Programmierung an sich zu tun, sondern etwas mit Datenverwaltung!

Wenn Du ein Programm (wie etwa ein Spiel) erstellst, dann kommen darin ja bestimmte Daten vor, welche Du verwalten (initialisieren, löschen, verschieben, berechnen, benutzen,...) musst.
Wenn Du nun bereits bei der Erstellung weisst, das Du soviel Daten und nicht mehr jemals brauchen wirst, dann brauchst Du keine komplexen Datenstrukturen wie eine verkettete Liste, sondern kannst alles mit einer fest definierten Anzahl an Variablen und Feldindizes realisieren.
Sollten sich aber während der Laufzeit Deines Programmes Datenbestände beliebig in Ihrer Größe verhalten können, dann kommst Du um Bäume (verkettete Liste ist auch ein Baum, nur ein entarteter) nicht umhin.

Ebenso lassen sich bestimmte Algorithmen auf große Datenmengen in Bäumen leichter und vor allem schneller anwenden, als z.B. auf Felder.

Kurzum:
JA, man benötigt Listen auch in der Spieleprogrammierung. Bei kleinen Projekten allerdings reichen elementare Datenstrukturen wie Felder und Variablen vollkommen aus!
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Hazel
JLI MVP
JLI MVP


Alter: 39
Anmeldedatum: 19.07.2002
Beiträge: 1761

Medaillen: Keine

BeitragVerfasst am: 17.07.2003, 10:52    Titel: Antworten mit Zitat

Ich finde sie nützlich und ich benutze sie bei den Spieleobjekten und bei den Partikeln.
_________________
*click* Dabuu!?
Twitter: http://twitter.com/Ollie_R
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
nEp
Junior JLI'ler



Anmeldedatum: 03.06.2003
Beiträge: 75

Medaillen: Keine

BeitragVerfasst am: 17.07.2003, 14:27    Titel: Antworten mit Zitat

Wobei die STL-Vektoren oftmals sogar die bessere Alternative sind Smile
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Mr.X
Junior JLI'ler



Anmeldedatum: 15.04.2003
Beiträge: 88

Medaillen: Keine

BeitragVerfasst am: 17.07.2003, 14:46    Titel: Antworten mit Zitat

nEp hat Folgendes geschrieben:
Wobei die STL-Vektoren oftmals sogar die bessere Alternative sind Smile

Allerdings nur was die Bedienung betrifft. Performance gewinnst Du dadurch keine.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
nEp
Junior JLI'ler



Anmeldedatum: 03.06.2003
Beiträge: 75

Medaillen: Keine

BeitragVerfasst am: 17.07.2003, 16:36    Titel: Antworten mit Zitat

Das kommt darauf an. In manchen Sachen sind die um einiges schneller als Listen.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Mr.X
Junior JLI'ler



Anmeldedatum: 15.04.2003
Beiträge: 88

Medaillen: Keine

BeitragVerfasst am: 17.07.2003, 17:17    Titel: .. Antworten mit Zitat

Ok, in manchen Sachen ja, da STL-Vektoren intern auch "nur" Felder sind, bei denen auf einzelne Elemente per Index zugegriffen werden kann, was bei Listen nur über die Verzeigerung geht. (->daher Geschwindigkeitsvorteil)
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Hazel
JLI MVP
JLI MVP


Alter: 39
Anmeldedatum: 19.07.2002
Beiträge: 1761

Medaillen: Keine

BeitragVerfasst am: 17.07.2003, 17:51    Titel: Antworten mit Zitat

Zitat:
Allerdings nur was die Bedienung betrifft. Performance gewinnst Du dadurch keine.

Doch tut man. Vektoren sind Arrays und somit ist der liegen die Elemente hintereinander im Speicher, dh. Man kann schneller durchiterieren. Auch das hinzufügen neuer Elemente macht keine Probleme, wenn man ordentlich Allok bei der Initialisierung des Vektors gibt. Und Listen haben den Nachteil, dass sie den Speicher fragmentieren, dass zu Fehlern und Abstürzen des Programms führen kann.
_________________
*click* Dabuu!?
Twitter: http://twitter.com/Ollie_R
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
AFE-GmdG
JLI MVP
JLI MVP


Alter: 45
Anmeldedatum: 19.07.2002
Beiträge: 1374
Wohnort: Irgendwo im Universum...
Medaillen: Keine

BeitragVerfasst am: 17.07.2003, 18:54    Titel: Antworten mit Zitat

Fragmentierter Speicher ist weder für Abstürze noch für Fehler im Programm verantwortlich. Solange man mit Verketteten Listen ordendlich umgeht (d.H. Wenn man mit der Speicherverwaltung dafür odendlich umgeht) tut das selbst dem Fragmentiertesten Speicher keinen Beinbruch ab.
Außerdem verwaltet Windows den Physikalischen Speicher in 4 KB-Blöcken und sorgt selbst für eine Defragmentierung durch optimierte Vergabe von Speicherseiten.
_________________
CPP:
float o=0.075,h=1.5,T,r,O,l,I;int _,L=80,s=3200;main(){for(;s%L||
(h-=o,T= -2),s;4 -(r=O*O)<(l=I*I)|++ _==L&&write(1,(--s%L?_<(L)?--_
%6:6:7)+\"World! \\n\",1)&&(O=I=l=_=r=0,T+=o /2))O=I*2*O+h,I=l+T-r;}
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    JLI Spieleprogrammierung Foren-Übersicht -> Entwicklung Alle Zeiten sind GMT
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.


Powered by phpBB © 2001, 2005 phpBB Group
Deutsche Übersetzung von phpBB.de

Impressum