Classe et constructeur

iam_myst Messages postés 51 Date d'inscription dimanche 13 février 2005 Statut Membre Dernière intervention 28 décembre 2006 - 16 mars 2006 à 12:34
iam_myst Messages postés 51 Date d'inscription dimanche 13 février 2005 Statut Membre Dernière intervention 28 décembre 2006 - 16 mars 2006 à 18:43
Bonjour a tous



je vais essayer de me faire comprendre sans les codes si ce n'est pas possible je les posterais :)



en fait j'ai un problème pour les déclarations de classe :



si on a:



class X

{

private int a;

...



public:

X( int ); // constructeur

X( const X & ); // constructeur par recopie

};

X::X( int c { a = c; }

X::X( const X &x) { a = x.a; }



puis dans un autre fichier:



#include"X.h"



class Y

{

private X a1;

private X a2;

private int b;

...



public: Y( X, X, int);

};



Y::Y(X x1, X x2, int t)

{

a1 = new X(x1);

a2 = new X(x2);

b = t;

}





Si je comprends bien il n'est pas possible de déclarer

private X a1;


private X a2;

car il n'existe pas de constructeur sans argument pour X .. mais est
il possible de faire sans puisque je crée les objets dans le
constructeurs de Y ??



Il est possible que je ne sois pas clair du tout, je m'en excuse d'avance :p



Merci

24 réponses

iam_myst Messages postés 51 Date d'inscription dimanche 13 février 2005 Statut Membre Dernière intervention 28 décembre 2006
16 mars 2006 à 18:30
ok, je suis content , ca marche merci pour vos réponses !
0
luhtor Messages postés 2023 Date d'inscription mardi 24 septembre 2002 Statut Membre Dernière intervention 28 juillet 2008 6
16 mars 2006 à 18:34
Je pense qu'il est tjs mieux de créer manuellement l'opérateur "=" que de laisser faire un qcq mécanisme automatique.
0
iam_myst Messages postés 51 Date d'inscription dimanche 13 février 2005 Statut Membre Dernière intervention 28 décembre 2006
16 mars 2006 à 18:43
ouais , mais ca copierais l'objet, or dans mon cas ce n'est pas avantageux je pense, parce que les objets sont les memes
0
iam_myst Messages postés 51 Date d'inscription dimanche 13 février 2005 Statut Membre Dernière intervention 28 décembre 2006
16 mars 2006 à 18:43
ouais , mais ca copierait l'objet, or dans mon cas ce n'est pas avantageux je pense, parce que les objets sont les memes
0
Rejoignez-nous