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
_________________

Irrlicht - From Noob To Pro A Guideline
--
Sonstige Projekte, Blog :
http://www.rpdev.net