Problem mit Klassen



  • Ich weiß nicht, ob das ins vc++ oder c++ Abteil gehört, falls es hier falsch ist, bitte verschieben...

    Vermutlich sehe ich den Wald vor lauter Bäumen nicht, bzw. habe ein Brett vorm Kopf:
    Ich habe eine Klasse "Zeit".

    struct Zeit {
    	int Jahr, Monat, Tag, Stunde, Zeinheit;
    	Zeit() {
    		Jahr = 2008;
    		Monat = 1;
    		Tag = 1;
    		Stunde = 8;
    		Zeinheit = 0;
    	}
    	void umstellung() {
    		Zeinheit++;
    		if(Zeinheit == 1) {
    			Zeinheit = 0;
    			Stunde++;
    			if(Stunde == 18) {
    				Stunde = 8;
    				Tag++;
    				if(Tag == 31 && (Monat == 1 || Monat == 3 || Monat == 5 || Monat == 7 || Monat == 8 || Monat == 10 || Monat == 12)) {
    					Monat++;
    					Tag = 1;
    				}
    				if(Tag == 30 && (Monat == 4 || Monat == 6 || Monat == 9 || Monat == 11)) {
    					Monat++;
    					Tag = 1;
    				}
    				if(Tag == 28 && Monat == 2 && (Jahr % 4 != 0 || (Jahr % 100 == 0 && Jahr % 400 != 0))) {
    					Monat++;
    					Tag = 1;
    				}
    				if(Tag == 29 && Monat == 2) {
    					Monat++;
    					Tag = 1;
    				}
    				if(Monat == 12) {
    					Jahr++;
    					Monat = 1;
    				}
    			}
    		}
    	}
    };
    

    Davon erstelle ich ein Objekt.

    Zeit datum();
    

    Dann will ich die Funktion umstellung durchführen:

    datum.umstellung();
    				 toolStripStatusLabel2->Text = "Datum: " + Convert::ToString(datum::Tag) + "," + Convert::ToString(datum::Monat) + "," + Convert::ToString(datum::Jahr);
    				 toolStripStatusLabel3->Text = "Uhrzeit: " + Convert::ToString(datum::Stunde) + " Uhr";
    

    Und ich bekomme diese Fehler:

    Kompilieren...
    zeit.cpp
    d:\visual studio 2008\projects\zeit\zeit\Form1.h(361) : error C2228: Links von ".umstellung" muss sich eine Klasse/Struktur/Union befinden.
    d:\visual studio 2008\projects\zeit\zeit\Form1.h(362) : error C2653: 'datum': Keine Klasse oder Namespace
    d:\visual studio 2008\projects\zeit\zeit\Form1.h(362) : error C2653: 'datum': Keine Klasse oder Namespace
    d:\visual studio 2008\projects\zeit\zeit\Form1.h(362) : error C2065: 'Monat': nichtdeklarierter Bezeichner
    d:\visual studio 2008\projects\zeit\zeit\Form1.h(362) : error C2653: 'datum': Keine Klasse oder Namespace
    d:\visual studio 2008\projects\zeit\zeit\Form1.h(362) : error C2065: 'Jahr': nichtdeklarierter Bezeichner
    d:\visual studio 2008\projects\zeit\zeit\Form1.h(363) : error C2653: 'datum': Keine Klasse oder Namespace
    d:\visual studio 2008\projects\zeit\zeit\Form1.h(363) : error C2065: 'Stunde': nichtdeklarierter Bezeichner
    Das Buildprotokoll wurde unter "file://d:\Visual Studio 2008\Projects\zeit\zeit\Debug\BuildLog.htm" gespeichert.
    Gärtner - 8 Fehler, 0 Warnung(en)

    Kann mir jemand sagen, wo der Fehler ist?
    Ist wahrscheinlich ganz einfach, aber ich find ihn einfach nicht 🤡



  • Zeit datum;
    


  • danke


Anmelden zum Antworten