Bonjour,
Ce message fait suite a mon message surcharge d'operateur qui n'a pas eu l'air d'avoir ete suffisament comprehensible.
Voila je dois faire une surcharge d'operateur pour += qui additionne deux IC d'une classe promotion.
Ces classes Promo ont pour attribut un tableau IC d'une classe etudiant et un int qui donne le nombre d'elem des tableaux.
Je n'arrive pas a recuperer mes tableaux dans les IC de classe Promo et je n'ai pas de message d'erreur a la compil et a l'execution le programme plante.
Le but de tout cela est de faire une boucle qui recuperer les elem. des deux IC Promo et de creer une troisieme IC Promo et copie les deux autres dedant.
Cela est le code de ma surcharge ou j'ai teste que je recupere bien mes var. d'IC Promo afin de creer mon 3E Array.
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 PromoEtu PromoEtu :: operator += (const PromoEtu& PE){ PromoEtu NouvelPromo; //Decl d'une nouvelle Promo int ancienIndex; //Long de l'array de l'IC appellante ancienIndex = IndexEtu; //Recup long. array premiere IC NouvelPromo.IndexEtu = ancienIndex + PE.IndexEtu; cout << "\n Long. totale nouvel array "<< NouvelPromo.IndexEtu; cout << "\n " ; for (int i = 0; i<ancienIndex;i++){ Etud X; X = PE.PtrPromoEtu[i]; X.affichEtudiant(); } return NouvelPromo; }
J'essaie dans la boucle for de faire un test pour verifier que je recupere bien un des objets du tableau etudiant inclus dans mon IC Promo et c'est ici que mon programme plante.
A l'ecran la methode affiche est bien appelee mais elle ne me donne que les adresses des variables suivantes.
Numero d'etudiant -2081649835
Numero de l'option 1448282348
Partager