Spiffou
Messages postés100Date d'inscriptionjeudi 1 avril 2004StatutMembreDernière intervention 9 juin 2014
-
1 mai 2005 à 23:47
Spiffou
Messages postés100Date d'inscriptionjeudi 1 avril 2004StatutMembreDernière intervention 9 juin 2014
-
5 mai 2005 à 10:20
bonsoir à tous,
j'ai un petit probleme de vector dans mon prg c++ (vc7).
j'utilise un vecteur contenant des structures "coup"
struct Coup
{
int etat;
double temps;
int type;
};
vector <Coup> pileServeur;
ensuite au cours du programme, je rempli mon vecteur dans une boucle à l'aide de la fonction push_back():
pileServeur.push_back(Serveur.Coup);
le seul probleme est que lorsque je souhaite acceder au contenu du
vecteur il y a des valeurs abérrantes dedans, c'est à dire que j'ai
vérifié au debugger et seul le premier élément contient une structure
coup cohérente, tous les autres sont faux...
au lieu d'avoir des valeurs du genre:
etat = 1
temps = 0.00sec
type = 5
j'ai des choses qui ressemblent à:
etat = -33686019
temps = -2.6569838326172271e+303-2.6569838326172271e+303
type = 0
pourtant, les elements cooup que je mets dans le vecteur avec le push
back sont cohérent (verification au debugger) donc là je ne comprends
pas pourquoi ca ne marche pas..
Lord_Patoche
Messages postés196Date d'inscriptionmercredi 6 août 2003StatutMembreDernière intervention 1 mai 20093 2 mai 2005 à 02:10
Avant de remplir tes vecteur à l'aide de cette fonction que tu appelles push_back, mets les à 0 ou à une valeur de ton choix . Si les résultats deviennent cette valeur, c'est que cette fonction ne remplit pas son role. Les valeurs incohérente que tu indique ressemblent fortement à des valeurs de variables crées mais non initialisées.
Spiffou
Messages postés100Date d'inscriptionjeudi 1 avril 2004StatutMembreDernière intervention 9 juin 20141 3 mai 2005 à 00:48
cette fonciton que j'appelle push_back est la fonction de la stl qui
sert à ajouter un element au vector donc j pense qu'elle marche...
par ctre j'ai bien verifié qu'avant le puch back mes valeur etait
initialisée, c'est pour ca que j ne comprends pas trop... si quelqu'un
peut m'aider ... merci