Bonjour
J'ai un souci au niveau d'une constante de précompilation et d'une inclusion de fichier.
Voici mon code:
Les fichiers d'entêtes entete1.h et entete2.h contiennent les mêmes prototypes de fonctions, seuls l'implémentation de ces fonctions diffèrent dans entete1.c et entete2.c
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 #define USE_HEADER_1 1 #ifdef USE_HEADER_1 #include "entete1.h" #endif #ifndef USE_HEADER_1 #include "entete2.h" #endif
Or, lors de la compilation (j'utilise DevCpp sur Windows), le compilateur me renvoie les erreurs suivantes:
multiple definition of `<nom_de_fonction>`
... et ce, pour chaque fonction définies dans entete1.h (et également dans entete2.h, cela va de soi).
J'ai l'impression que malgré la présence ou l'absence de la constante USE_HEADER_1, le compilateur inclut quand même tous les fichiers de mon projet...
Partager