Bonjour à tous,

Dans un de mes programmes, je travaille avec le conteneur vector. Je débute avec les conteneurs, donc j'y vais pas à pas, à la lumière des trucs que je peux lire un peu partout.
Là j'ai un petit pépin. Je souhaite utiliser l'outil itérateur proposé par la classe vector, en lieu et place d'un itérateur manuel.
A la base ma fonction ressemblait a ca: (sachant que mon vecteur s'appele "MyPeople" et qu'il est composé d'éléments "people")
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
int NumberOfPeople = MyPeople.size();
int detect;
if (MyPeople.empty())
{
   Fonction1();
}
else
{
   for (int i=0;i<NumberOfPeople;++i)
   {
      detect = Fonction2(MyPeople.at(i));	
      if (detect==0)		
      {
         Fonction3(MyPeople.at(i));   
      }
   }
   Fonction4();	
}
déromais, mon code est le suivant:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
int NumberOfPeople = MyPeople.size();
vector<people>::iterator MyIte;
int detect;
if (MyPeople.empty())
{
   Fonction1();
}
else
{
   for (MyIte=MyPeople.begin();MyIte!=MyPeople.end();++MyIte)
   {
      detect = Fonction2(*MyIte);	
      if (detect==0)		
      {
         Fonction3(*MyIte);   
      }
   }
   Fonction4();	
}
Mais ce "nouveau" code me donne de temps en temps un message d'erreur:

Le debogueur me pointe alors sur ce fichier dbghook.c:


Merci d'avance pour votre aide (et conseils )