Question sur #ifdef et #ifndef
Bonjour,
je me posai une question a propos de ces directives, en effet, si j'utilise la directive #ifndef, si je comprends bien, je pourrais mettre n'importe quoi à cote et le code en dessous sera executé? donc les instructions suivantes sont les memes :
Code:
1 2 3
| #ifndef TOTO
instruction
#endif |
et
Code:
1 2 3
| #ifndef TATA
instruction
#endif |
quel est donc linteret d'une telle directive?
par ailleurs, est il possible de renvoyer une erreur en utilisant ces directives? si oui de quelle maniere? par exemple, j'ai fait le bout de code suivant, mais je ne suis pas sur qu'il renvoie quelquechose etant donné que la vérification est faite avant la compilation.
Code:
1 2 3 4
| #ifndef XXX
if (sizeof(toto) < sizeof(tata))
{ return E_FALSE }
#endif |
merci d'avance pour vos eclaircissements!!!