Bonjour, j'ai un problème, je bloque dessus depuis plusieurs heures déjà et je n'en vois pas le bout...

J'ai uen classe Perso :
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
20
21
22
23
24
25
26
27
28
29
30
31
32
33
struct position {
	int para;
	int meri;
};
 
 
class Perso {
  public:
          Perso();
          Perso(string n, int v,int e, Sac s, int p, int m);
          ~Perso();
 
          string getNom() const ;
          int getVitesse() const ;
          void setVitesse(int v);
          int getEnergie() const;
          void setEnergie(int e);
          int getParallele() const;
          int getMeridien() const;
          void setPosition(int p, int m);
	  Sac getSac() const;
          void frapper(Perso p);
 
          virtual char typePerso() { return 'p'; }
 
 
  protected:
          string nom;
          int vitesse,energie;
          Sac s;
          position pos;
          friend ostream &operator << (ostream &os, const Perso &p);
};

Et j'aimerai afficher juste le parallele du perso avec un vector :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
void Carte::afficherTousPerso() {
  vector<Perso> * p;
  vector<Perso>::iterator i;
  for (i = (*p).begin(); i != (*p).end(); i++)
    {
	int para = (*p)[0].getParallele();
	cout << para << endl;
    }
}
Il me sort un seg fault, au niveau du (*p)[0]...
Il y a-t-il une autre facon d'acceder a un membre d'une classe ou ma méthode est bonne, juste mal codé ?