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

10.07.2012, 20:42

Der Konstruktor wird immer aufgerufen, wenn eine Instanze der Klasse erstellt wird. Wenn du den Inhalt der Load Funktion in den Konstruktor verschiebst, dann musst du nicht extra Load() aufrufen, denn der Konstruktor wird aufgerufen.

MfG
Delop

dot

Supermoderator

Beiträge: 9 757

Wohnort: Graz

  • Private Nachricht senden

12

10.07.2012, 20:43

Tut mir Leid ich habe mich nicht klar ausgedrückt. Es ging mir eigentlich darum im Menü eine Möglichkeit einzubauen um von hier aus das Spiel zu beenden.

Hab oben noch was editiert. Dafür könntest du einfach einen Rückgabewert benutzen.

Und ich dachte der Code der im Buch bei der Load-Funktion genutzt wird konnte hier zu gebrauchen sein. Trotzdem danke für das try catch Beispiel. Eine Frage hätte ich hier aber trotzdem noch, warum gehört das Load in den Konstruktor? Der Code aus dem Buch nutzt nämlich die Load-Funktion.

Was tut dein Sprite denn, wenn Load nicht aufgerufen wird? Sry, aber auch wenn ist das Buch nicht kenne, wenn ich C++ Code seh, der mit Init() Methoden und Aufrufen von exit() übersät ist, dann kann ich nur zu dem Schluss kommen, dass der Code alles andere als einen guten Stil vorgibt. NachoMan scheint das ähnlich zu sehen. Wenn du einfach nur ein kleines 2D Spiel in C++ machen willst, würde ich übrigens auch zu SFML raten.

13

10.07.2012, 20:57

Ist die SFML wirklich "besser" geeignet für Anfänger?
Kann man mit der SFML-Bibliothek Spiele wie Teeworlds erstellen (Ja, mir ist bewusst, dass dieses Spiel einiges an Programmierkentnisse erfordert ;))
Soweit ich weiß, benutzt Teeworlds ja die SDL Bibliothek. Würde so ein Spiel auch mit der SFML realisierbar sein? (denn dann würde mir das aufjedenfall reichen von der Technik her) ;)

14

10.07.2012, 21:00

Teeworlds könnte man auch mit SFML programmieren. Es kommt aber sehr oft auf den Programmierer an und nicht welche Lib er benutzt.

MfG
Delop

dot

Supermoderator

Beiträge: 9 757

Wohnort: Graz

  • Private Nachricht senden

15

10.07.2012, 21:02

Ich würde die SFML generell der SDL vorziehen, einfach weil es, im Gegensatz zu SDL, eine einigermaßen saubere C++ Bibliothek ist. Dass sie zusätzlich noch sehr einfach zu benutzen ist, ist natürlich auch kein Nachteil. Sowas wie Teeworlds sollte damit auf jeden Fall möglich sein (höchstens bei aufwendigen Partikeleffekten müsste man evtl. etwas mehr tun, um das performant hinzubekommen).

16

10.07.2012, 21:03

Okay danke euch, dann werd ich mir die mal anschauen :thinking:

17

10.07.2012, 21:50

Wenn ihr von Heiko Kalistas schlechtem Stil sprecht meint ihr dann nur dieses konsequente Verzichten auf die Konstruktor-
bzw. Destruktorfunktionalitäten?
Was haltet ihr denn von dem Buch allgemein? Oder welche Bücher würdet ihr mir empfehlen um die Fehler aus diesem Buch
auszubügeln?

NachoMan

Community-Fossil

Beiträge: 3 885

Wohnort: Berlin

Beruf: (Nachhilfe)Lehrer (Mathematik, C++, Java, C#)

  • Private Nachricht senden

18

10.07.2012, 22:29

Es gibt einige Dinge in dem buch, die ein guter c++ Programmierer anders machen würde. Ich hatte bereits zwei Bücher genannt mit denen man das meiste davon ausmerzen kann. Allerdings ist c++ so komplex, das dieses eine weitere Buch nicht reichen wird, wenn du wirklich guten Code produzieren willst. Hinzu kommen noch Bücher wie effective c++ oder exceptional c++.
"Der erste Trunk aus dem Becher der Erkenntnis macht einem zum Atheist, doch auf dem Grund des Bechers wartet Gott." - Werner Heisenberg
Biete Privatunterricht in Berlin und Online.
Kommt jemand mit Nach oMan?

Beiträge: 1 223

Wohnort: Deutschland Bayern

Beruf: Schüler

  • Private Nachricht senden

19

10.07.2012, 22:49

Bücher sind das eine, das andere ist üben, üben und nochmal üben.

Wenn du nicht das Wissen aus den Büchern anwendest und selbst über deinen Code nachdenkst, bringen dich auch ein dutzend weitere Bücher kaum weiter.
Ich denke, zwei Bücher reichen erstmal vollauf. ;)

dot

Supermoderator

Beiträge: 9 757

Wohnort: Graz

  • Private Nachricht senden

20

10.07.2012, 23:36

Ich würde dir auch dazu raten, jetzt erstmal Erfahrung zu sammeln, indem du selbstständig und ohne Vorlage einige einfache Projekt umsetzt. Wenn du dann etwas sicherer im Umgang mit C++ bist, kannst du dir Effective C++ zulegen.

Werbeanzeige