J'ai un programme composé de 3 fichiers:Appel d'une fonction à partir du même fichier d'en-tête à partir de deux fichiers C++ dans le même projet
main.c; other.c et event.h
événement.h a une fonction appelée 'événement()'.
Je voudrais appeler la fonction event() à partir de main.c et other.c. Au sommet des deux main.c et other.c-je inclure la ligne
#include "event.h"
... et dans chacun des fichiers .c je les lignes
event();
Cependant je reçois ce qui suit des erreurs de compilation (Visual C++)
"de LNK1169 d'erreur fatale: un ou plusieurs symboles définis multiplication trouvé"
"erreur LNK2005: _event @ 16 déjà défini dans main.obj"
... Qu'est-ce que je fais mal?
Merci - c'est la solution dont j'ai besoin – CaptainProg
"L'en-tête doit inclure uniquement la [** déclaration **] de la fonction d'événement ...". * La déclaration * et * la définition * ne sont pas des termes interchangeables en C++. Vous auriez aussi pu utiliser le terme * prototype *. –
@Emile - oui je sais - une faute de frappe - j'ai eu le bon en première ligne et passé du temps à double vérification mais manqué :) – Mark