Klassen definieren ....



  • sodala 😃

    ich entwickel gerade ein Projekt,ein ziemlich großes Projekt,was man bald im Dev. Forum sehen kann.Ich bräuchte aber "Klassenkentnisse",ansonsten komme ich nicht weiter voran.
    Headerdateien zu schreiben kann ich schon seit ich C++ gelernt hab *g* :p

    Aber ich baut sich so eine ganze Klasse mit private und public auf?
    Anfangen tut man mit diesem:

    class ki_magier {
    private:
    const int magier_verteidigung;
    int magier_atk;
    int magier_bewegung;
    int magier_mana;
    int magier_ausdauer;
    
    public:
    //..
    };
    

    so mal angenommen ich schreibe folgendes..:

    class ki_magier {
    private:
    const int magier_verteidigung;
    int magier_atk;
    int magier_bewegung;
    int magier_mana;
    int magier_ausdauer;
    int sum;
    
    public:
    sum = magier_atk*magier_bewegung;
    };
    

    Aber daraus bilden sich folgende Fehler:

    15: error: `ki_magier::magier_atk' cannot appear in a constant-expression
    15: error: `ki_magier::magier_bewegung' cannot appear in a constant-expression
    15: error: ISO C++ forbids declaration of `sum' with no type
    15: error: ISO C++ forbids initialization of member `sum'
    15: error: making `sum' static
    15: error: ISO C++ forbids in-class initialization of non-const static member `sum'
    15: error: declaration of `int ki_magier::sum'
    12: error: conflicts with previous declaration `int ki_magier::sum'
    

    Nun, aber was ist den da nur falsch?

    Kann mich bitte jemand in die Klasse einweihen?^^

    Mfg.class'o 😉



  • man hat dir doch schon die antwort gesagt!
    [url]http://www.cpp-tutor.de
    [/url]



  • Volkard's C++ Kurs bei den Tutorials:
    kurz
    verständlich
    umfassend
    gut



  • Hallo

    Die Benennung deiner membervariablen ist, meiner Meinung nach, auch suboptimal.

    chrische



  • ki_magier -> NpcMage
    magier_atk -> m_atk
    ...
    🙂

    Denke aber das ist das geringste Problem *pfeiff*


Log in to reply