Xervos
Erfahrenes Mitglied
Hallo Leute,
ich bin gerade dabei mich in c++ einzuarbeiten. Es funkioniert soweit schon alles recht gut nur merke ich schnell das ich als relativer C++ neuling, schnell an meine Grenze stosse, deshalb habe ich mich entschlossen hier mal nachzufragen vll kann mir einer helfen.
Also mal zu meiner aufgabenstellung:
Ich möchte gerne Objekteverwalten, zb. Texte, Images usw. Diese sollen in einem ObjectManager gespeichert und verwaltet werden. Diese Objecte werden von anderen Klassen in den ObjectManager geladen der diese dann verwaltet.
Ich habe das ganze schon geschafft und habe es mit einer ListenKnoten "gelöst" das Funktionierte soweit ganz gut, bis ich auf einen Fehler drauf gekommen bin. Wenn ich jetzt zb ein bestimmtes Objekt aus der Liste löschen will dann stoße ich an meine grenzen.
Ein Beispiel:
Die Klasse a lädt objekte in den ObjectManager, die Klasse b lädt objekte rein usw. Jetzt möchte Klasse a das der ObjectManager die Objekte wieder freigibt die Klasse A reingeladen hat. Naja jetzt habe ich das Problem, die Objekte der KLasse B sind aber in der ListKnote weiter vorne und von da an beginnt das Programm nun zu arbeiten. Ich schaffe es einfach nicht die Objekte der Klasse A zu finden, zu löschen und die Liste neu zu Ordnen.
Jetzt habe ich mich ein bisschen im internet Schlau gemacht und etwas über das std::List gelesen nur wie bekomm ich das zum laufen ? Zur anschaung:
Ich habe hier ein Struct nun möchte ich darüber eine Liste legen und diese Befüllen, bzw. element daraus löschen können
Wenn ich die Liste aber nun non so anlege:
Sagt der Compiler 'list': Ist kein Element von 'std' O_O ich kenne mich nicht mehr aus aber wenn ich im Compile Std:: mache dann kommt da list zur auswahl ******
Naja ich brauche dringend hilfe wie das den wirklich geht. Wie gesagt ich habe das vorher mit Pointer gemacht aber da habe ich gelesen das dies nicht soo gut ist.
lg
Christoph
ich bin gerade dabei mich in c++ einzuarbeiten. Es funkioniert soweit schon alles recht gut nur merke ich schnell das ich als relativer C++ neuling, schnell an meine Grenze stosse, deshalb habe ich mich entschlossen hier mal nachzufragen vll kann mir einer helfen.
Also mal zu meiner aufgabenstellung:
Ich möchte gerne Objekteverwalten, zb. Texte, Images usw. Diese sollen in einem ObjectManager gespeichert und verwaltet werden. Diese Objecte werden von anderen Klassen in den ObjectManager geladen der diese dann verwaltet.
Ich habe das ganze schon geschafft und habe es mit einer ListenKnoten "gelöst" das Funktionierte soweit ganz gut, bis ich auf einen Fehler drauf gekommen bin. Wenn ich jetzt zb ein bestimmtes Objekt aus der Liste löschen will dann stoße ich an meine grenzen.
Ein Beispiel:
Die Klasse a lädt objekte in den ObjectManager, die Klasse b lädt objekte rein usw. Jetzt möchte Klasse a das der ObjectManager die Objekte wieder freigibt die Klasse A reingeladen hat. Naja jetzt habe ich das Problem, die Objekte der KLasse B sind aber in der ListKnote weiter vorne und von da an beginnt das Programm nun zu arbeiten. Ich schaffe es einfach nicht die Objekte der Klasse A zu finden, zu löschen und die Liste neu zu Ordnen.
Jetzt habe ich mich ein bisschen im internet Schlau gemacht und etwas über das std::List gelesen nur wie bekomm ich das zum laufen ? Zur anschaung:
Code:
struct GameObjectList
{
int ID;
std::string szName;
GameObjectState GameState;
GameObjectGroup ObjectGroup;
GameObject ObjectInstance;
};
Ich habe hier ein Struct nun möchte ich darüber eine Liste legen und diese Befüllen, bzw. element daraus löschen können
Wenn ich die Liste aber nun non so anlege:
Code:
std::list<GameObjectList> ListGameObjects;
Sagt der Compiler 'list': Ist kein Element von 'std' O_O ich kenne mich nicht mehr aus aber wenn ich im Compile Std:: mache dann kommt da list zur auswahl ******
Naja ich brauche dringend hilfe wie das den wirklich geht. Wie gesagt ich habe das vorher mit Pointer gemacht aber da habe ich gelesen das dies nicht soo gut ist.
lg
Christoph