Globale Objekte



  • CPlusPlusN00b schrieb:

    So, und in der main würde ich dann gerne noch sowas wie
    Game = new GameHandling()
    machen, also den Konstruktor aufrufen damit ich dann wirklich ein Objekt habe!

    Das brauchst du nicht, wir sind hier nicht bei Java oder C#. Du hast "wirklich ein Objekt".

    Allerdings sollte die Klassendeklaration vor der Definition der globlalen Variablen stehen.



  • Gut, Danke einmal!

    Das hat meine Fehler von 4 auf 2 gesenkt. Hier die noch verbleibenden:

    unexpected 'class' 'GameHandling' 😕
    unable to recover from previous error(s); stopping compilation 😕 😕

    Kannst du mir da auch helfen?



  • zeig mal bitte etwas mehr quellcode....irgendwas is an der klasse falsch!



  • CPlusPlusN00b schrieb:

    unexpected 'class' 'GameHandling' 😕
    unable to recover from previous error(s); stopping compilation 😕 😕

    Hast du vor der Deklaration von GameHandling womöglich eine andere Klassendeklaration nicht mit einem Semikolon abgeschlossen?



  • Okay, hier:

    #include <windows.h> //möchte grafisch machen, das haut auch hin, nur das Spiel selbst geht nicht
    
    class Player
    {
    private:
        int int_Action;
    public:
        Player() //Konstruktor
        {
    
    class GameHandling
    {
    private:
        Player pla_Spieler[2]; //ist auch eine Klasse
        int int_aktSpieler;
    public:
        GameHandling() //Konstruktor
        {
            //So war es früher, habe ich aber weggelassen
            pla_Spieler[1] = Player();
            pla_Spieler[2] = Player();
        }
    
        int set_Action(int Action)
        {
            //hier kommt dann ein bisschen unnötiger Quelltext, zur Verarbeitung der Eingabe, es geht um Schere Stein Papier!
        }
    }
    

    Das ist inetwa die Klasse!

    (Einen Fehler habe ich vorher noch selber gefunden, ich habe bei
    class GameHandling
    zwei Klammern (wie bei einer Methode) angehängt, die sind jetzt weg, geht immer noch nicht, macht sogar mehr Fehler 🙂 )



  • Sorry, habe gerade statt [ALT]+Y (für 4 Leerzeichen) [ALT]+S gedrückt und habe deshalt nicht fertigen Quelltext geschickt!

    #include <windows.h> //möchte grafisch machen, das haut auch hin, nur das Spiel selbst geht nicht 
    
    class Player 
    { 
    private: 
        int int_Action; 
    public: 
        Player() //Konstruktor 
        { 
            int_Action = 0;
        }
    
        //dann kommt noch get- und set-action ...
    }
    
    class GameHandling 
    { 
    private: 
        Player pla_Spieler[2]; //ist auch eine Klasse 
        int int_aktSpieler; 
    public: 
        GameHandling() //Konstruktor 
        { 
            //So war es früher, habe ich aber weggelassen 
            pla_Spieler[1] = Player(); 
            pla_Spieler[2] = Player(); 
        } 
    
        int set_Action(int Action) 
        { 
            //hier kommt dann ein bisschen unnötiger Quelltext, zur Verarbeitung der Eingabe, es geht um Schere Stein Papier! 
        } 
    }
    


  • Am Ende der Deklaration von Player fehlt das Semikolon.



  • ok, grad neuen code gesehen



  • MFK schrieb:

    Am Ende der Deklaration von Player fehlt das Semikolon.

    Und am ende von GameHandling auch!



  • Ja, das stimmt, danke! War in JAVA leider nie so 🙂

    Es geht jetzt!



  • hi, kann man den quellcode von schere stein papier evtl bekommen? 🙂


Anmelden zum Antworten