bonjour, toujours dans la comprehension des outils pour mieux programmer (du moins essayer),
j'en suis au log.
j'ai compris le principe du log, j'arrive a faire un simple log, mais je comprend pas ce log...
http://loulou.developpez.com/tutorie.../partie1/#L2.1
et oui encore... desolé
(d'un autre coté, c'est la base que j'utilise avant d'aller voir sur d'autre site...pourquoi y a pas ce genre de truc dans les boucains???)
en fait, voici ce que je comprend pas.
bon alors voila ce que je comprend pas,
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72 class ILogger { public : virtual ~ILogger(); static void SetLogger(ILogger* Logger); static void Log(const char* Format, ...); static ILogger& Log(); template <class T> ILogger& operator <<(const T& ToLog); protected : std::string CurrentDate() const; std::string CurrentTime() const; private : virtual void Write(const std::string& Message) = 0; static void Destroy(); static ILogger* s_Instance; // Pointeur sur le logger actuel void ILogger::SetLogger(ILogger* Logger) { Destroy(); s_Instance = Logger; } void ILogger::Destroy() { delete s_Instance; s_Instance = NULL; }
premierement , la clase write est en private, ca veux dire qu'elle ne sera pas heritée dans les classes abstraites, or il faut la surdefinir, comment peut on redefinir qqch qu'on a pas??? j'ai regardé ici
http://c.developpez.com/tutcpp/x3770.php
mais elle sont toutes public (pour les = 0) sniff (ou alors, j'ai mal regardé ( ce qui est tout a fait possible)
Moi ce que je crois comprendre (sachant que le code est bon ) c'est qu'il faut la surdefinir dans private de la classe heritée, mais alors est ce moyen pour faire passé des fonction membres privée a sa sous classe??et si oui, qu'a t elle comme droit sur les autres donnée de la classe mere?? (suis je assez clair???)
autre chose que je comprend pas (mais je crois que ca s'adresse plus a l'auteur)
c'est que fait la fonction SetLogger , si j'ai bien compris (et c'est pas grand choses) elle detruit l'ancien log pour en mettre pour en mettre un nouveau qu'il faut avoir construit, donc si on a un log pour le moteur et un autre pour l'affichage (que sais je) et que les msg sont alternée, il faut chque dois detruire l'un et construire l'autre puis au prochain msg detruire l'autre et reconstruire l'un???
ai je bien compris??je ne crois pas , je vois comment les codé, (j'ai meme reussir a en faire un petit log simpa et sans derivée youpi) mais je vois pas comment utilisé celui la??
voila, encore deux question en plus a mon actif (ca commence a faire beaucoup je trouve)
merci
a++
Partager