Frage : C++ Compilerstörung C2039

1>. \ Indexe \ northrend \ icecrown_citadel \ frozen_halls \ halls_of_reflection \ halls_of_reflection.cpp (748): Störung C2039: „SummonGameobject“: nicht ist ein Mitglied 'des Creature'< Brs/>1> c:\documents and settings\latest +kortoc \ master \ src \ game \ Creature.h (390): Erklärung 'des Creature'< Brs/>
Creature.h (Linie 390) sehen = Kategorie MANGOS_DLL_SPEC Geschöpf: allgemeines Unit

Could, das jemand gefallen, erklären, wie man „SummonGameobject“ ein Mitglied vom Geschöpf bildet? Mir verzeihen, ich sind durchaus das C++ newbie.

Antwort : C++ Compilerstörung C2039

Seite: Sie anderes Projekt eingeführt vermutlich SummonGameObject als statische Methode in der WorldObject Kategorie e.

GameObject* WorldObject:: SummonGameobject (uint32 Identifikation, Hin- und Herbewegung x, Hin- und Herbewegung y, Hin- und Herbewegung z, Herbewegungswinkel, despwtime uint32)

Diese Linie gibt jedoch den Eindruck, dass sie nicht-statisch ist, aber meine raue Vermutung ist, dass sie statisch sein sollte, weil sie scheint, GameObjects Identifikation als Standplätze des Parameters GO_ICE_WALL für Spielgegenstand ice_wall zuerst zu nehmen. Diese Methode ist die übliche globale Nachschlagenmethode, die Registerspielgegenstände lokalisiert und folglich sinnvoll ist, statisch zu sein, es sei denn ofcourse ein worldobject ein zusammengesetzter Spielgegenstand ist, der aus anderen Spielgegenständen besteht.

wenn (GameObject* kathodenseitig steuerbar = m_creature->SummonGameObject (GO_ICE_WALL, 5540.39f, 2086.48f, 731.066f, 1.00057f, 0))

 Möglicherweise können Sie mit dem anderen Projekt überprüfen und sehen, wie sie es getan. BTW, wenn SummonGameobject ein GameObject zurückbringen kann, das möglicherweise nicht WorldGameObject immer sein kann dann die Rückholart, sollte strenger ein bisschen sein, weiteren unnessary Typecasting zu vermeiden und folgenden Code mehr typesafe zu bilden. Andernfalls ist es vermutlich mehr sinnvoll, es in GameObject einzusetzen eher als WorldGameObject.

Es könnte wie, kopierend zu Worldobject.h/cpp so einfach sein (wenn die die Namen sind). Andernfalls sollten Sie versuchen, Ihren eigenen Entwurf zu haben, wie Sie Sitz sehen können. Beginnen, indem Sie gerade ihn im Geschöpf definieren, wenn Sie ihn benötigen, anderwohin, das Sie ihn auf das niedrige Kategorie und refactor accordingle verschieben können.

Gewesen sein kleiner eines Vermutungspiels, ließ Sie den Quellencode bekannt gegeben haben…

Weitere Lösungen  
 
programming4us programming4us