-
Salut,
Ce qui serait int�ressant de savoir, c'est si les classes B, C, G et T, respectivement utilis�e avec des tableaux pour les membres cer, flux, groupe et ter, ont des comportement polymorphes.
En effet, si ces diff�rents objets ne sont pas polymorphes, et si (cela semble �tre le cas, si j'ai bien compris :D) la dur�e de vie de ces objets est g�r�e par ta classe A, il n'y a, a priori, aucune raison pour les manipuler sous la forme de pointeurs.
En effet, si tu supprimes d�j� le recours � des pointeurs pour ces objets, tu rend la copie d'une instance de type A beaucoup plus facile, car la classe vector est parfaitement copiable et assignable.
La deuxi�me chose qu'il me semblerait bon d'�valuer, c'est d'essayer de d�terminer si la classe A, et surtout, la fonction saisirDonnees, n'en font pas un peu trop.
En effet, lorsque je vois qu'une classe dispose, en dehors des formes de Coplien, d'une seule fonction et de... 10 membres, je ne peux m'emp�cher de penser que la classe, et tr�s certainement la fonction, ont beaucoup trop de responsabilit�s :aie:
Enfin, il semblerait int�ressant d'�valuer correctement si la classe a effectivement s�mantique de valeur.
En effet, cette classe a tout ce qu'il faut pour �tre utilis�e de mani�re polymorphe, � commencer par un destructeur virtuel, et en continuant par la seule fonction qui ne fasse pas partie des forme de Coplien (saisirDonnees, toujours) qui est, �galement, virtuelle.
D'apr�s mon exp�rience, les objets polymorphes ont rarement (jamais :question:) une s�mantique de valeur et tr�s souvent une s�mantique d'entit�, ce qui devrait nous inciter � les rendre non copiables et non assignables. Au mieux, on pourrait envisager de rendre les objets ayant s�mantique d'entit� cl�nables ;)
Enfin, bref, tout cela pour dire qu'il serait int�ressant de savoir l'utilisation que tu pr�vois pour ta classe A (et pour toutes les classes associ�es: B, C, G et T) , car, soit, elles ont s�mantiques de valeur, et il est donc vraiment important de r�fl�chir au meilleur moyen de les rendre copiables et assignables (entre autres, en "virant" tous les pointeurs ;)), soit elles ont s�mantique d'entit�, et il faut revoir en profondeur la mani�re dont tu les utilises, car il n'y a sans doute pas lieu de permettre leur copie et leur affectation ;)
-
sinon svp comment faire pour surcharger l'op�rateur = pour ma structure
merci de votre r�ponse
-
@koala1 : j'aurai besoin d'ytiliser les pointeurs pour cette structure