Bonjour, je cherche à coder une classe utilitaire qui me permettrait d'afficher des messages formatés dans un fichier de log.
J'ai fait de cette classe un singleton, et j'aimerais pouvoir l'utiliser de cette manière:
J'ai essayé plusieurs méthodes plus ou moins "propres", mais aucune ne fonctionne (erreurs de compilation), je n'arrive pas à utiliser les flux pour passser le message à mon objet log
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 ClasseDeLog::instance() << "Message à loguer" << variable << endl;
En vrac, j'ai essayé de faire hériter mon objet de ofstream, mais apparement c++ interdit de retourner un stream, seulement un pointeur, et je ne veux pas avoir à passer par un pointeur. J'ai essayé d'utiliser un attribut de type fstream, même problème, je ne suis autorisé qu'à retourner un pointeur sur cet attribut.
Enfin en surchargeant l'opérateur << :
, mais il semble que je ne peux pas faire comme ça, et je ne tiens pas à redefinir l'operateur << pour chaque type de message
Code : Sélectionner tout - Visualiser dans une fenêtre à part ostream& operator<< (ClasseDeLog& c, ostream& o){...}
Quel est le moyen le plus simple pour résoudre mon problème, en utilisant impérativement les flux, et en gardant la syntaxe que j'ai indiqué au début du message ?
D'avance merci pour vos conseils.
Xav
Partager