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
le header de l'unité principale n'a rien à voir avec le problème.
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 // }![]()
Header de l'unité secondaire.
Cpp de la seconde unité
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 int variable=3; void A();
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.
Partager