problem mit membervariablen



  • also jey, leude!!

    hab innem header jez einfach ne klasse defeniert:

    class C_Beispiel
    {
    private:
        int test;
    public:
        C_Beispiel();
        virtual ~C_Beispiel();
        void SetTest();
    };
    

    so, und jez die zugehoerige cpp:

    #include "beispiel.h"
    
    void C_Beispiel::SetTest()
    {
        test = 10;
    }
    

    also das is mal mein problem in einfachster form!!
    eigentlich müsste doch alles funzen??
    aber tut's nich, ka, das prog stürzt einfach ab sobald "test=10" ausgeführt werden soll!

    irgendwelche ideen??



  • Da solltest du schon das ganze Programm zeigen.



  • Das sollte eigentlich so funktionieren, ich gib dir gleich mal einen kompletten quellcode.
    mom.

    MfG RoaN;



  • the[V]oid schrieb:

    das prog stürzt einfach ab sobald "test=10" ausgeführt werden soll!

    Bitte genauer. Oder hast du eine Messagebox gesehen, die meldet "Programm ist einfach abgestürzt"?

    irgendwelche ideen??

    Rufst du SetTest über einen uninitialisierten Zeiger auf?

    Ansonsten, wie meine Vorredner schon sagten: Mehr Code!



  • class C_Beispiel 
    { 
    private: 
        int test; 
    public: 
        C_Beispiel(){}
        virtual ~C_Beispiel(){} 
        void SetTest();
    };
    
    void C_Beispiel::SetTest() 
    { 
        test = 10; 
    }
    
    int main()
    {
      C_Beispiel bsp;
      bsp.SetTest();
    }
    

    Du musst einfach geschweifte Klammern hinter dem Konstruktor und dem Dekonstruktor setzen. 😉

    MfG RoaN;



  • Das erklärt noch nicht warum es bei der zuweisung an test abschmiert.

    Die klammern helfen allenfalls gegen ne linkermeldung ala unresolved external symbol.

    Ich behaupte mal dass der fehler nicht in dieser klasse liegt, wenn sie so aussieht wie du geschrieben hast.


Anmelden zum Antworten