Problème de multi-inclusion (erreur lnk2005) [Résolu]

- 31 août 2012 à 19:18 - Dernière réponse :  michelangelo71
- 31 août 2012 à 21:16
Bonjour,

Je débute en C++ sous VisualStudio 2010 et j'ai un souci de multi-inclusion de variable lorsque j'ai plusieurs fichiers : j'obtiens une erreur lnk2005.

Voici mes codes très simples, vu que je suis en phase d'apprentissage. Mais je ne vois pas ce qui est faux.
Précision : j'ai créé un projet vide, sans préprocesseur (ou autre).

MAIN.CPP
#include "main.h"
#include "moyenne.h"

void main()
{
for (int i= 0 ; i<taille ; i++)
{
tableau[i]=i*i;
cout << "tableau, position " << i << " valeur " << tableau[i] << endl;
}

moyenne = Fonction_moyenne(tableau,taille);
cout << "moyenne = " << moyenne << endl;

system("PAUSE");
}


MAIN.H
#ifndef MAIN_H
#define MAIN_H

#include 
using namespace std;

int const taille(5);
double tableau[taille];

#endif


MOYENNE.CPP
#include "moyenne.h"

double Fonction_moyenne(double aTableau[],int bTailleTableau)
{
for (int j =0 ; j
using namespace std;

double moyenne(0);
double Fonction_moyenne(double tableau[],int tailleTableau);

#endif




Visual me donne lors de la génération :
Erreur 1 error LNK2005: "double moyenne" (?moyenne@@3NA) déjà défini(e) dans main.obj

Si quelqu'un peut me conseiller, je l'en remercie.
Afficher la suite 

Votre réponse

2 réponses

Meilleure réponse
Messages postés
21054
Date d'inscription
jeudi 23 janvier 2003
Statut
Modérateur
Dernière intervention
7 novembre 2014
- 31 août 2012 à 21:05
3
Merci
double moyenne = 0.0;
va dans le CPP;

dans le H, on met:
extern double moyenne;


ciao...
BruNews, MVP VC++

Merci BruNews 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 88 internautes ce mois-ci

Commenter la réponse de BruNews
- 31 août 2012 à 21:16
0
Merci
Merci beaucoup . C'était bien ça les soucis.
Notamment le "extern" que je n'avais pas encore vu.
Commenter la réponse de michelangelo71

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.