Pb d'affectation!!!!!!!!!!!!!

Résolu
nabilac Messages postés 80 Date d'inscription jeudi 30 septembre 2004 Statut Membre Dernière intervention 30 mai 2006 - 10 avril 2006 à 09:48
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 - 10 avril 2006 à 11:12
bonjour tout le monde,

j'ai un tres grand pb !!!

j'ai une classe C1, qui a comme attributs f1, f2,f3
j'ai une autre classe C2, qui a comme attribut f3;
je crée C1 avec new C1(f1, f2,f3)
et je crée C2 en fonction de C1:new C2(C1.f3)

le pb est que lorsque je modifie la valeur de f3 dans C2, la valeur de f3 de C1 change, chose que je ne veux pas avoir.

Comment faire pour changer la valeur de f3 dans C2 sans changer la valeur de f3 de C1???????????

c'est tres urgent, je suis bloquee sur ca depuis vendredi!!!!!!

3 réponses

crenaud76 Messages postés 4172 Date d'inscription mercredi 30 juillet 2003 Statut Membre Dernière intervention 9 juin 2006 28
10 avril 2006 à 09:52
f1,f2 et f3 sont des objets non ?
SI dans le constructeur de C2 tu fais un truc du genre f3 = C1.f3
Tu crées une référence entre le f3 de C2 et le f3 de C1.
Il faut que tu recrées un objet f3 pour C2 de toute pièce et que tu recopies les valeur du F3 de C1 dans le nouveau f3 de c2

CR
3
jrivet Messages postés 7392 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
10 avril 2006 à 10:14
Salut,

Et en passant C1.f3 en mode ByVal et non En ByRef (c est juste une idée comme ca)

@+, Julien
Pensez: Moteur de Recherche, Réponse Acceptée
0
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
10 avril 2006 à 11:12
je pense que crenaud76 est dans le vrai.... f3 est un objet

et tes propriétés de C1 et C2 pointent, finalement vers le même objet...
il va te falloir Cloner ton objet, et pas faire d'affectation directe...

Renfield
Admin CodeS-SourceS - MVP Visual Basic
0
Rejoignez-nous