What that means ?

plz help explain to me these lignes 11 56 75 95 101
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
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
class Enseignant
{

      int PPR;
      char Nom[20];
      char Prenom[30];
      int Nb_mat;

      Matiere Tab_Matiere[5]; // tableau des matières
      public:
             static int ct;
             Enseignant ();
             Enseignant (int, char *, char *);
             void supprimer(int);
             void afficher(int);
             void affiche ();
             void ajouter_ensei();
             void ajouter_matiere(int );
             ~Enseignant ();
};

int Enseignant::ct=0;

///////////////////====== Constructeur par défaut======/////////////////////
Enseignant::Enseignant()
{
 PPR=0;
 strcpy(Nom,"");
 strcpy(Prenom,"");
  Nb_mat=0;

}
///////////////////====== Constructeur Surchargé======/////////////////////
Enseignant::Enseignant(int n,char *m,char *p)
{
 PPR=n;
 strcpy(Nom,m);
 strcpy(Prenom,p);
 Nb_mat=0;
 ct++;

}
 ///////////////////====== Fonction ajouter un enseignant======/////////////////////
void Enseignant::ajouter_ensei()
{
   int Num;
 char Nom[20],Pre[30];

            cout<<"\nEntrer le PPR: ";
            cin>>Num;
            cout<<"\nEntrer le Nom: ";

            gets(Nom);
            cout<<"\nEntrer le Prenom: ";
            gets(Pre);
            *(this + ct-1)=Enseignant(Num,Nom,Pre);

}

 ///////////////////====== Fonction ajouter une matière à un enseignant======/////////////////////
void Enseignant::ajouter_matiere(int pp){

 int Id_mat;
 char Intitule[20];



for(int i=0;i<ct;i++)
 if((this+i)->PPR==pp) {

  cout<<"\n id: ";
            cin>>Id_mat;
            cout<<"\nIntitule : ";
            gets(Intitule);
            (this+i)->Tab_Matiere[(this+i)->Nb_mat++]=Matiere(Id_mat,Intitule) ;
 }


}

 ///////////////////====== Fonction afficher l'enseignant courant ======/////////////////////
void Enseignant::affiche()
{
 cout<<"PPr:"<<PPR<<endl;
 cout<<"Nom:"<<Nom<<endl;
 cout<<"Prénom:"<<Prenom<<endl;
 cout<<"----------------------"<<endl;
}

 ///////////////////====== Fonction afficher un enseignant donné======/////////////////////
void Enseignant::afficher(int code)
{
 int i;
 for(i=0;i<ct;i++)
 if((this+i)->PPR==code)
 {
   (this+i)->affiche();
   cout<<"\n liste des matières enseignées :\n";

   for(int j=0;j<(this+i)->Nb_mat;j++)
    (this+i)->Tab_Matiere[j].afficher();
    break;
  }
}
 ///////////////////====== Fonction Supprimer un enseignant donné======/////////////////////

void Enseignant::supprimer(int code)
{
int i,j;
for(i=0;i<ct;i++)
 if((this+i)->PPR==code)
 {
 for(j=i;j<ct-1;j++)
  *(this+j)=*(this+j+1);
   ct--;
   break;
line 11: a static member of a class is like a global variable inside the class scope, it doesn't depend on any object
all other requested lines: a way you shouldn't use to access members
Your class thinks that it's an array of object of the same class
Last edited on
Topic archived. No new replies allowed.