Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

11

17.05.2017, 20:11

Also ich kenne mich zwar nicht mit SDL und ttf aus, aber ich hätte das CloseFont in deine Quit Funktion gegeben (bzw. dort eine Funktion wie z.B.: CText::Exit, in der CloseFont aufgerufen wird, aufgerufen).

Aber die Quit Funktion von CGame wird erst am Ende des Spiels aufgerufen und nicht jedes Frame.

12

17.05.2017, 20:13

Ich muss doch versuchen das jedes Frame zu löschen, oder?

13

17.05.2017, 20:15

Verwende Konstruktor und Destruktor. Lies dich außerdem in RAII ein, dann passiert soetwas nicht

14

17.05.2017, 20:20

Entschuldigung für meine vielen Fragen, aber was ist RAII? :)


Und ich weiß nicht, ob das zu viel verlangt ist, aber kann jemand dann die entsprechende Schnittstelle des Codes schicken?

Vielen Dank, fall jemand so nett ist ).

15

17.05.2017, 20:32

Ok, ich hab nachgeschaut, also ist RAII, wenn man das erstellen und zerstören im Destruktor und Konstruktor schreibt.

Dann muss ich also das font aus LoadFont in eine neue Membervariable speichern und diese dann dort mit CloseFont schließlich zerstören oder wie? Denn font ist ja nur in LoadFont gültig.

Architekt

Community-Fossil

Beiträge: 2 481

Wohnort: Hamburg

Beruf: Student

  • Private Nachricht senden

16

17.05.2017, 20:35

Ggf. solltest du dich vorher mit den Grundlagen beschäftigen bevor du direkt ein Spiel bauen willst. :)
Im CTor solltest du deinen CText und deine CFont erzeugen und im DTor zerstören und während dessen benutzt du sie.
Der einfachste Weg eine Kopie zu entfernen ist sie zu löschen.
- Stephan Schmidt -

17

17.05.2017, 20:42

Ggf. solltest du dich vorher mit den Grundlagen beschäftigen bevor du direkt ein Spiel bauen willst. :)
Im CTor solltest du deinen CText und deine CFont erzeugen und im DTor zerstören und während dessen benutzt du sie.

Danke, werde ich ausprobieren ;)

PS: Ich programmiere 1 Jahr und habe mich mit vielen Sachen beschäftigt, doch dies ist das größte Problem, auf was ich gestoßen bin )). Alles andere klappt einwandfrei nur das nicht ((.
Nichts gegen dich oder andere, also bitte nicht wütend werden )).

Danke, ich werde mich VIELLEICHT nochmal melden :)

18

17.05.2017, 20:49

Du musst auf jeden Fall modernes C++ lernen. Die Benutzung von new und delete, NULL und C-Präfixen ist regelrecht obsolet.

19

17.05.2017, 20:57

Du musst auf jeden Fall modernes C++ lernen. Die Benutzung von new und delete, NULL und C-Präfixen ist regelrecht obsolet.

Ach, ich denke, dass mein Wissen für so ein Spiel reicht ).
Und außerdem: Alle Foren dich ich besucht habe, haben ungefähr so eine Weise verwendet bzw. Bücher auch.
Doch das ist ein anderes Thema, denke ich mal ).

Architekt

Community-Fossil

Beiträge: 2 481

Wohnort: Hamburg

Beruf: Student

  • Private Nachricht senden

20

17.05.2017, 21:23

Sieh' es als Ratschlag an dich mit C++11, C++14 etc. zu beschäftigen. Es wird dir viel Arbeit abnehmen. ;)
Der einfachste Weg eine Kopie zu entfernen ist sie zu löschen.
- Stephan Schmidt -

Werbeanzeige