appel d'un vector créé dans une autre classe
Bonjour, j'expose mon probleme.
Une classe me crée un vector comme suit, je n'ai mis que la partie de code utile pour la compréhension de mon pb.
Ma map est bien remplie, (je l'ai verifie);)
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
|
map<string, float> Maclasse::Mafonction(Configuration* cnf)
{.....
.....
.....
map<string, int> monvecteur
if (file)
{
while(!file.fail())
{
file>>nom>>valeur;
monvecteur[nom]=valeur;
cout<<nom<<"-"<<valeur<<endl;
}
}
else
{
cout<<"ERROR : can't open file";
}
return monvecteur;
} |
Maintenant et c'est la que j'ai un problème, je veux utiliser les valeurs de cette map pour faire des calculs mathématique. Je fais dans une autre classe(un autre .cpp)
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
|
bool Moncalcul::CalculMath(map<string, double>*& blabla)
{
cout<<"bonjour : "<<endl; Jusque la ca marche
for (map<string, float>::iterator myiter = monvecteur->begin(); myiter!=monvecteur->end(); myiter++)
{
cout<<"nom: "<<myiter->first<<endl;
mon calcul = puis la formule;
}
return true;
blabla = moncalcul;
}
C'est comme si il n'arrivait pas a rentrer dans la boucle for. J'ai l'impression qu'il n'arrive pas a trouver cette map.
Pourtant cette fois ci j'ai bien fais une instance de ma classe en créant l'objet
dans mon main de la manière suivante : |
Code:
1 2
| MaClasse* truc = MaClasse
truc->Mafonction(); |
puis idem pour ma seconde classe.
Code:
1 2
| MonCalcul* truc2 = MonCalcul
truc2->CalculMath(); |
J'ai n'ai aucun message d'erreur. Juste un plantage sur le moment en rouge
Merci.;)