salut tous,
je ne suis pas très à l'aise avec les pointeurs sur objets, les classes... du coup j'ai besoin d'une confirmation sur l'utilisation des pointeurs sur objets/classes afin de bien débuter ma programmation.
voici tout d'abord des éléments généraux sur mon futur programme
1°) mon programme contient une classe principale "Princip"
2°) une methode de cette classe va faire appel à des "objets principaux" d'autres classes "o_p1, o_p2, o_p3" qui eux même peuvent faire appel à d'autres "objets/classes secondaires" "o_s1, o_s2, o_s3" pour recupérer des données
voici ce que je compte faire et mes questions
3°) Dans "Princip" declarer en attribut des pointeurs sur objets "*o_p1, *o_p2, *o_p3, *o_s1, *o_s2, *o_s3" afin que mes objets n'appartiennent pas à la classe "Princip" (et donc être accessibles facilement à partir d'un autre endroit que cette classe "Princip" ?)
4°) Dans une methode de la class principal lorsque je voudrais utiliser des méthodes des 'o_p' je devrais bien faire ? :
5°) à présent je veux modifier des attribut de l'objet1 et pour cela j'ai besoin d'attributs des objets secondaire "o_s2 oS_3", je dois donc faire comme ceci pour appeler la méthode:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 o_p1->methodeObjetP_1();
avec ce prototype ?:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 o_p1->methodeModifAttributObjetP_1(&o_s2,&oS_3);
ainsi dans la methode je pourrais obtenir des attribut des objets "o_s2 oS_3" en faisant ? :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 methodeModifAttributObjetP_1(o_s2*,oS_3*);
6°) si je veux qu'une methode d'une classe me renvoi un double il faut que je fasse ceci ? :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 *o_s2->get_attribut1(); *o_s3->get_attribut9();
Dernier chose à propos de la "declaration" des objets
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 double mondouble=*o_p2->returnNombre();
au depart de mon code (dans le main) je vais mettre une fonction qui compte le nombre de systemes que je dois étudier et en fonction de ceci je devrais générer "n" objets et faire des calculs similaires sur les "n" objets.
7°) pour la déclaration de mes objets de la classe principale je devrais donc faire un vecteur de pointeurs d'objets (dans le constructeur) comme ceci?:
et dans le destructeur ? :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 for (int n=0;n<nbSystemes;n++ { monVectorObjet.push_back(new *objetSystemeIndiceN); }
8°) si je veux copier les caractéristiques de tous les objets du vecteur dans des objets d'un autre vecteur (de meme taille) il faudra que je fasse ? :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 for (int n=0;n<nbSystemes;n++ { delete monVectorObjet[n]; }
j'espere que vous pourrez me repondre à toutes ces questions car je ne suis pas certains d'avoir tous saisi et je ne peux pas actuellement essayer. Je vous remercie d'avance pour votre aide
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 monvectorObjet1=monVectorObjet2;
EDIT:
pour la 7°) il faut que je mets ceci dans le .h
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 vector<MaClass*> nomVector;
Partager