Enumerator
Mitglied Kamel
'n Abend!
Da ich immer wieder Logfiles in meinen Progs benötige, wollte ich eine simple, universelle Header basteln, die dem Client die (inline) Methode "schreib_log(const char* lpszText)" zur verfügung stellt.
Nun gibt's da aber ein Problem: Jede cpp-Datei die die Header nutzen soll, soll in dieselbe Log.txt schreiben - was so einfach gar nicht ist.
Das Ziel: Außerhalb der Header soll keine weitere Initilaisierung erforderlich sein, also funktioniert z. B. "extern FILE* logFile" in der Methode nicht.
Die Lösung: Z.B. ein globaler FILE-struct pointer, der nur einmal initialisiert wird (egal in wie vielen .cpp die .h eingebunden wird) - NUR WIE?
Hinweis: Selbstverständlich möchte ich aus Perfomance-Gründen nicht bei jedem Aufruf von "schreib_log(..)" die Datei öffnen und schließen...
THX im Vorraus, Mfg Enum



Da ich immer wieder Logfiles in meinen Progs benötige, wollte ich eine simple, universelle Header basteln, die dem Client die (inline) Methode "schreib_log(const char* lpszText)" zur verfügung stellt.
Nun gibt's da aber ein Problem: Jede cpp-Datei die die Header nutzen soll, soll in dieselbe Log.txt schreiben - was so einfach gar nicht ist.
Das Ziel: Außerhalb der Header soll keine weitere Initilaisierung erforderlich sein, also funktioniert z. B. "extern FILE* logFile" in der Methode nicht.
Die Lösung: Z.B. ein globaler FILE-struct pointer, der nur einmal initialisiert wird (egal in wie vielen .cpp die .h eingebunden wird) - NUR WIE?
Hinweis: Selbstverständlich möchte ich aus Perfomance-Gründen nicht bei jedem Aufruf von "schreib_log(..)" die Datei öffnen und schließen...
THX im Vorraus, Mfg Enum