Registriert: Di Nov 29, 2005 21:11 Beiträge: 88 Wohnort: Bonn
Halli Hallo!
Ich habe ein Problem mit einer StringList.
Und zwar habe ich, nach dem Vorbild im Tutorial, einen TexturManager geschrieben. Eigentlich ist es fast der selbe Code, nur dass ich die Texturen mit SDL lade...
Die If-Abfrage in der 3. Zeile bereitet mir Probleme. Genauer der Aufruf von Names.IndexOf. Der gibt nämlich weder die Position, noch -1 für nicht gefunden zurück, sondern springt von da aus direkt zum glDisable(GL_TEXTURE_2D)
Die If-Abfrage schlägt nicht fehl, sonst würde er ja zum WriteLn springen. Außerdem habe ich zu Testzwecken den Aufruf von IndexOf vor die If-Abfrage geschrieben - mit dem selben Ergebnis...
die Anwendung beendet sich dann völlig von selbst
Es hat alles funktioniert, als ich noch sämtlichen Code in einer Unit hatte. Jetzt sind Sachen wie Map, EventHandler, Kamera und eben TexturManager eigene Objekte und ich steh aufm Schlauch...
Hat jemand ne Idee?
Edit: Es ist vollkommen egal, was ich mit der StringList mache, das Programm beendet sich sang und klanglos (und Fehlermeldungslos)
Ich habe nur Names.Sorted abgefragt und bin rausgeflogen...
EDIT Ich habe den Fehler gefunden... es ist grausam... es hat nichts mit der StringList zu tun, sondern mit der Struktur des ganzen Projektes
Die "Module" (Map, Kamera, TexturManager) sind Objects und denen habe ich eine Variable Owner: ^TObject angedichtet, damit ich von einem Modul über das OberObejct Game auf das ein anderes komme. Das mit dem Zeiger war wohl ne Schnapsidee, denn ohne geht es...
Warum und wie mans besser macht - dafür mach ich wohl besser nen eigenen Thread auf...
Danke für die Geduld
Als kleiner Hinweis: Objekte sind in Delphi bereits Zeiger. Wenn du also unbedingt Zeiger brauchst direkt auf Pointer casten, und nich die adresse holen, da pointer auf pointer selten sinnvoll ist.
Registriert: Do Sep 02, 2004 19:42 Beiträge: 4158
Programmiersprache: FreePascal, C++
Genau, die einzige mir bekannte sinnvolle Anwendungsituation für einen PObject-Typ sind die VirtualTreeView komponenten (für die Node-Datas), aber sonst gibts da glaube ich keinen Grund, das zu nehmen.
Gruß Lord Horazont
_________________ If you find any deadlinks, please send me a notification – Wenn du tote Links findest, sende mir eine Benachrichtigung. current projects: ManiacLab; aioxmpp zombofant network • my photostream „Writing code is like writing poetry“ - source unknown
„Give a man a fish, and you feed him for a day. Teach a man to fish and you feed him for a lifetime. “ ~ A Chinese Proverb
Mitglieder in diesem Forum: 0 Mitglieder und 12 Gäste
Du darfst keine neuen Themen in diesem Forum erstellen. Du darfst keine Antworten zu Themen in diesem Forum erstellen. Du darfst deine Beiträge in diesem Forum nicht ändern. Du darfst deine Beiträge in diesem Forum nicht löschen. Du darfst keine Dateianhänge in diesem Forum erstellen.