2 Funktionen mit derselben Variable aber doch nicht...
-
Okay und wofür genau brauchst Du das?
Ich meine, den Spieler sollte doch eigentlich das Fenster gar nicht interessieren, oder? Oder hat das Fenster Renderaufgaben, sodass der Spieler sich dort rendern lassen kann?
-
Flutscherino schrieb:
Naja, ja.. Ich will halt bloss in der CPlayer klasse das fenster abrufen können wo ich in der CGame klasse erstelle.. Nicht mehr ujd nicht weniger
Wann weis die CPlayer Klasse wann sie den SPieler zeichnen soll?
Wenn CGame eine Methode in CPlayer dafür aufruft, dann kann doch CGame einfach das entsprechende Fenster mit übergeben.
-
firefly schrieb:
Flutscherino schrieb:
Naja, ja.. Ich will halt bloss in der CPlayer klasse das fenster abrufen können wo ich in der CGame klasse erstelle.. Nicht mehr ujd nicht weniger
Wann weis die CPlayer Klasse wann sie den SPieler zeichnen soll?
Wenn CGame eine Methode in CPlayer dafür aufruft, dann kann doch CGame einfach das entsprechende Fenster mit übergeben.Es stimmt schon das ich es einfach übergeben könnte, so hab ich das vorher auch gehabt, nur will ich wegkommen von "Ach, ich übergebs doch einfach..." Mentalität
weil eben vorhin war meine aufrufe immer so ewigs lang ^^
-
Das ist meist nicht so schlimm, aber wenig Abhängigkeiten zu haben ist Gold wert, wenn Du Dein Programm später änderst und/oder erweiterst.
-
Naja ich weis ja eh noch nicht genau WAS ich mache, ich will nur wissen WIE ich es mache
-
Doof nur, dass Du vor dem WIE das WAS wissen musst
-
Ok, falsch formuliert ich weis WAS ich machen möchte jetzt, aber später ka
-
omfg!
-
Naja dennoch weis ich immernoch nicht weiter wie ich mein Problem angeh...
Ich brauch ja das später sicherlich nochmehr, alles was ich will ist:
- Ein Objekt generieren in CGameInit
CGame game; game.Init();
- Diese Objekt weiterverwenden in CPlayer
CGame game; //hier, wie krieg ich irgendwie mit, welches Objekt ich schon in der CGameInit habe? so mache ich doch eifnach ein neues objekt und das weis halt nix vom alten... game.draw(player);
Ich mache am anfang meines Codes ein Objekt von der CGame, mit dessen Objekt ich dann ein Fenster generiere, und diese Fenster brauch ich dann ja weiter von der CPlayer init, auch WENN player halt nich wissen muss welches Fenster ich habe, damit ich vom CPlayer aus auf das Fenster zugreifen kann, muss ich ja wissen welches Objekt das Fenster kreiert hat damit ich darauf zugreifen kann...
auch wenn ich das Fenster erst später generier, oder in einer Seperaten Klasse, ich komme immer an einen Punkt wo 2 Klassen auf dasselbe Objekt zugreifen müssen, woher wissen die welches Objekt ich meine?
-
Puh, schwer für mich da durch zu blicken. Ich habe versucht, das was ich verstanden habe, so umzusetzen wie ich es verstanden habe. Ich bin aber auch nur Hobbyprogrammierer, also keine Garantie für richtige Umsetzung.
class CWindow {}; class CGame { private: CWindow* _window; public: void createWindow() { _window = new CWindow(); } CWindow* getWindow() { return _window; } }; class CPlayer { private: CWindow* _window; public: void init(CWindow* window){ _window = window; } }; int main() { // 1.Ich mache am anfang meines Codes ein Objekt von der CGame CGame cgame_object; // 2.mit dessen Objekt ich dann ein Fenster generiere cgame_object.createWindow(); CPlayer cplayer_object; // 3.und diese Fenster brauch ich dann ja weiter von der CPlayer init cplayer_object.init(cgame_object.getWindow()); return 0; }
-
Oh danke vielmals, ich werd das mal anschaun und mich wieder mit fragen melden
-
Und bitte lass die C-Praefixe bleiben.
-
Kellerautomat schrieb:
Und bitte lass die C-Praefixe bleiben.
Grund?
Was ist standard?
-
Soweit ich weiß, gibt es keinen allgemeinen Standard. Es gibt verschiedene Coding Styles an die man sich halten kann, aber wenn man alleine arbeitet und dies auch weiter vor hat, ist es so ziemlich egal, solange du den Überblick behältst.
Hier ist mal der C++ Style von Google: http://google-styleguide.googlecode.com/svn/trunk/cppguide.xml
-
Flutscherino schrieb:
Grund?
Nene, du bist derjenige der begruenden muss. Warum sowas verwenden?
Flutscherino schrieb:
Was ist standard?
Keine Praefixe?
-
Butterbrot schrieb:
Soweit ich weiß, gibt es keinen allgemeinen Standard. Es gibt verschiedene Coding Styles an die man sich halten kann, aber wenn man alleine arbeitet und dies auch weiter vor hat, ist es so ziemlich egal, solange du den Überblick behältst.
Hier ist mal der C++ Style von Google: http://google-styleguide.googlecode.com/svn/trunk/cppguide.xml
Interessanter Link, danke
-
Flutscherino schrieb:
Grund?
Cwas Cbringt Cdas Cwenn Cdu Cvor Cjeden CTyp Cein CC Cschreibst? Das C wird damit völlig redundant und nichtssagend und stört nur beim Lesen.
-
pumuckl schrieb:
Flutscherino schrieb:
Grund?
Cwas Cbringt Cdas Cwenn Cdu Cvor Cjeden CTyp Cein CC Cschreibst? Das C wird damit völlig redundant und nichtssagend und stört nur beim Lesen.
C steht ja nur bei Class..
S bei Struct
M bei Membervariablejo so hab ich das jedenfalls aus meinem ersten Buch, ka, finds eigentlich noch praktisch
-
Flutscherino schrieb:
jo so hab ich das jedenfalls aus meinem ersten Buch, ka, finds eigentlich noch praktisch
Bis du irgendwann merkst, dass es egal ist ob etwas eine struct oder class ist.
int128
was ist das? Class, Struct, Typedef? Ist es relevant?
lustig wird es, wenn es ein typedef auf einigen systemen und eine class auf anderen systemen ist - je nach unterliegender Plattform.
Solche Prefixe haben keine Aussage - sie luegen aber manchmal
-
Shade Of Mine schrieb:
Flutscherino schrieb:
jo so hab ich das jedenfalls aus meinem ersten Buch, ka, finds eigentlich noch praktisch
Bis du irgendwann merkst, dass es egal ist ob etwas eine struct oder class ist.
int128
was ist das? Class, Struct, Typedef? Ist es relevant?
lustig wird es, wenn es ein typedef auf einigen systemen und eine class auf anderen systemen ist - je nach unterliegender Plattform.
Solche Prefixe haben keine Aussage - sie luegen aber manchmal
jo aber ich denke am anfang isses doch sehr hilfreich und "verlernt" hat man es ja schnell wieder