bonjour,

voilà j'utilise peut etre mal mon vector mais j'ai ce problème :
j'ecris dans un fichier texte les valeurs qu'il contient ( ligne à ligne). J'obtient le bon nombre de lignes (donc le vecteur contient bien le bon nombre de valeurs) mais elles sont toutes identiques (et elles ne devraient pas, j'obtiens uniquement la derniere valeur sur toute les lignes)

voici mon code :

avant j'avais :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
 
cooc->calculParametres();
fprintf(f, "1\t");
cooc->getParametres()->ecrireParamFichier(f);
fprintf(f,"\n");
ecrireparam ecrit simplement les valeurs des parametres sur une ligne (ces valeurs sont correctes)

maintenant j'ai :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
cooc->calculParametres();
ApprentissageExterieur->push_back(cooc->getParametres());
au lieu de les ecrire dans un fichier texte je veux stocker les valeurs dans un vecteur.

Ensuite pour vérifier j'ai fais la fonction suivante :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
{
	std::string fichierSignet = "fichier.txt";
        std::ofstream fichier(fichierSignet.c_str(), std::ios::trunc);
	if ( !fichier ){
		std::cerr << "Erreur de creation du fichier" << std::endl;
		exit(1);
	}
	const std::string SEP = "\t";
	for( std::vector<HaralickVecteur *>::iterator it = Vec->begin();  it!=Vec->end();it++)
	{	
		fichier << (*it)->homogeneite << SEP << (*it)->contraste << SEP << (*it)->momentAngulaire << std::endl;
	}
	fichier.close();
}
ma boucle for boucle bien le nombre de fois qu'elle dois, mais j'ai toujours mes valeurs (homogeneite etc..) identiques qui correspondent à la derniere...