salut j'ai une simple (encore une) question
si j'ecris
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
 
#define LOG 0
 
#if LOG
#define _LOG(text,params) STLOG_WRITE(text,params)
#else
#define _LOG(text,params)
#endif
je peu choisir si je log ou pas certaines chose, si je met
#define LOG 1 ça trace
#define LOG0 ça trace pas

Mais il me vient une question dans le cas LOG = 0
le compilo met quoi a la place de ma macro _LOG(text,params) ???

En cherchant j'ai trouver des gens qui faisaient

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
 
#define LOG 0
 
#if LOG
#define _LOG(text,params) STLOG_WRITE(text,params)
#else
#define _LOG(text,params) /
inline doNothin(){}
#endif
Ma question est : quel est le plus propre et bein sur le plus "stable" il me sembke quand meme que la solution inline donne l'assurance d'avoir quelque chose dans les deux cas !!
Mais f(){} c'est compilé, linké et présent dans l'exe ???
le compilo fait le menage non ? alors quel interet de mettre une fonction inline dans ce cas ??