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 Membervariable

    jo 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 😉


Anmelden zum Antworten