PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Problem mit einer Klasse


TheGamer
2003-06-27, 17:48:23
editiert aus bestimmten gruenden

Demirug
2003-06-27, 18:00:07
Ist das so deine ganze Win32.cpp?

Falls ja ist es verständlich das der Compiler das nicht will. Ausserhalb einer Funktion oder Methode kann man keine Methode aufrufen.

TheGamer
2003-06-27, 18:30:56
Man bin ich blöd, da hätte ich eigentlich selber draufkommen müssen.

Dankeschön!!!!!!!!


Noch eine kleine Frage. Wie kann ich die Code Datei und die Zeile in dieser Datei ermitteln in der ein Fehler passiert ist?? Und wie bekomm ich das Datum und die Uhrzeit von Windows??

Xmas
2003-06-27, 19:13:15
Original geschrieben von TheGamer
Man bin ich blöd, da hätte ich eigentlich selber draufkommen müssen.

Dankeschön!!!!!!!!


Noch eine kleine Frage. Wie kann ich die Code Datei und die Zeile in dieser Datei ermitteln in der ein Fehler passiert ist?? Und wie bekomm ich das Datum und die Uhrzeit von Windows??

Die vordefinierten Symbole __LINE__ und __FILE__ enthalten Zeilennummer (Dezimalzahl) und Dateiname (Stringliteral). Sie können mit der Präprozessor-Direktive #line auch geändert werden.

Datum und Uhrzeit kannst du zur Laufzeit mit

time_t td;
struct tm *timeanddate;
time(&td);
timeanddate = localtime(&td);

ermitteln (definiert in time.h).

Demirug
2003-06-27, 19:17:04
Ich vermute du meinst wie du den Compiler dazu bringst an einer bestimmten Stelle in deinem Code den aktuellen Dateinamen bzw die Zeile einzusetzen?

Falls ja dafür gibt es vordefinierte Makros:

__FILE__ Wird durch den Namen der Datei in Anführungszeichen ersetzt

__LINE__ Wird durch die Zeilennummer ersetzt

Es gibt noch mehr davon teilweise aber Compilerspezifisch.

Welches Datum und Uhrzeit möchtest du den haben?

Die Lokalisierte Systemzeit oder eine Zeitzonen unabhängie (UTC)?

Irgendwelche Anforderungen an das Format?

Aufgeschlüsstelt nach Jahr, Monat, Tag usw oder als relativer Zahlenwert mit dem es besser möglich ist Zeitdifferenzen zu berechnen?

EDIT: Xmas war schneller.

TheGamer
2003-06-27, 19:24:52
Das Datum brauch ich für das Error Log (wann die Aufzeichnung des Logs begann und wann sie aufhörte)

Das mit der Datei und der Zeile brauch ich um diese Angaben in das Error log zu schreiben oder per MessageBox auszugeben.

Danke für die schnellen Antworten!!!!

Noch was grundsätzliches wie geb ich __LINE__ in einer MessageBox aus.
Also __LINE__ in const char wandeln??

TheGamer

Xmas
2003-06-27, 20:29:13
Original geschrieben von TheGamer
Noch was grundsätzliches wie geb ich __LINE__ in einer MessageBox aus.
Also __LINE__ in const char wandeln??
Genau so wie du einen const int ausgibst.
Also z.B.
sprintf(buffer, "%i", __LINE__);

Zu beachten ist dabei natürlich, dass du __LINE__ auch dort auswertest wo der Fehler auftritt.

TheGamer
2003-06-28, 10:21:17
Danke, jetzt funzt mein LogFile perfekt!

TheGamer