Aktuelle Zeit: 29.03.2024, 11:34

Alle Zeiten sind UTC + 1 Stunde




Ein neues Thema erstellen Auf das Thema antworten  [ 2 Beiträge ] 
Autor Nachricht
BeitragVerfasst: 29.06.2011, 15:15 
Offline
Benutzeravatar

Registriert: 17.04.2007, 08:42
Beiträge: 460
Wohnort: Willich, NRW
Das sind keine Fehler ;) Die Klasse vector stammt aus der STL und ist nix weiter als ein dynamisches Array. Hier die Reference mit ein paar Beispielen zu tun.

Die Idee ist folgende: Da man vor Beginn an nie genau weiß, wie viele Gamestates man braucht, wäre es nicht sinnvoll ein statisches Array mit definierte Größe zu verwenden, da ich sonst zu wenig Platz oder zu viel Platz habe. Daher benutzt man dynamisches Arrays und nimmt nur den Platz den man braucht. Sprich mit:

Code:
vector<IGameState*> gameStates;


Erzeuge ich nur ein dynamisches Array mit dem Namen gameStates und sage, dass ich in den Container vector nur Referenzen auf Objekte, die von IGameState erben reinpacken will. Klingt jez erst mal hochgestochen, ist aber ganz einfach. Ich leite von der Klasse (eigentlich Interface) IGameState ab und erzeuge einen Zeiger drauf. Und das ist eigentlich genau das was dann Intro, Outro, Menu usw ist. Ich erzeuge mir konrete Typen, überlade die Methoden um mein gewünschtes Verhalten zu bekommen und trage das ins Array ein. Werd hier mal den Code für eine Beispielklasse anhängen, damits vllt etwas klarer wird. Falls es zu verwirrend ist, werde ich das auf jeden Fall mit ins Wiki übernehmen.

@Fehler: Welche Fehler hast du denn gefunden? Bin immer dankbar für Feedback.

Code:
//Intro.h
//*********************************************************************************/
#if !defined __intro_h__
#define __intro_h__

//*********************************************************************************/
#include "GameState.h"

//*********************************************************************************/
class Intro : public GameState
{
private:

public:
   Intro(void);
   Intro(stringc name);
   virtual ~Intro(void);

   void OnEnter(void);
   void OnLeave(void);

   bool OnEvent(const SEvent &event);

   void render(void);
};

//*********************************************************************************/
#endif


Für weiteren Fragen bin ich natürlich immer offen. Grüße heck

_________________
Bild

Irrlicht - From Noob To Pro A Guideline

--

Sonstige Projekte, Blog : http://www.rpdev.net


Nach oben
 Profil  
 
BeitragVerfasst: 29.06.2011, 15:48 
Offline

Registriert: 25.02.2011, 15:22
Beiträge: 179
hast du noch kritik oder wünsche in bezug auf das wikibook?

_________________
Irrlicht - from Noob to Pro
Bild


Nach oben
 Profil  
 
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 2 Beiträge ] 

Alle Zeiten sind UTC + 1 Stunde


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 6 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.

Suche nach:
Gehe zu:  
cron
Powered by phpBB® Forum Software © phpBB Group
Deutsche Übersetzung durch phpBB.de