J'ai 2 unités.
Une principale et une secondaire.
Dans la secondaire j'ai une variable initialisée à 3 par exemple et j'ai une fonction A de type void.
Dans le premier je fais appel à cette fonction qui est censé changer la valeur de la variable.
Or : la variable garde sa valeur d'origine alors qu'on la changée de valeur.

Donc pour vous éclairer :

Cpp de l'unité principale
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
 
#include "main.h"
#include "secondaire.h"
 
void B()
{
    A();
    cout << variable; // ne vous fiez pas au cout car c'est avec le debuggeur que le probleme est visible //
}
le header de l'unité principale n'a rien à voir avec le problème.

Header de l'unité secondaire.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
 
int variable=3;
void A();
Cpp de la seconde unité
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
 
#include "secondaire.h"
 
void A()
{
   variable=22;
   return;
}


Resultat : variable = 3

Problème bizarre. Si quelqu'un a la solution... qu'il n'hésite pas.