Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1555 connectés 

  FORUM HardWare.fr
  Programmation
  C#/.NET managed

  Variables pointant vers la même valeur

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Variables pointant vers la même valeur

n°1301810
BigBulle
Posté le 09-02-2006 à 09:35:41  profilanswer
 

Boujour à tous,
 
Je suis en train de créer une méthode Clone() pour l'une de mes classes.
Je voudrais que l'un des membres  de cette classe soit 'synchronisé' entre deux classes clonées (si je change la valeur dans une classe, cette valeur change identiquement dans ses clones).
 
Ce membre est de type boolean.
 
En c++, j'aurais utilisé un pointeur vers un bool. Mais ici, en C#, je vois pas comment je peux faire ça de manière simple...
 
Si vous avez une idée...
 
Un tout grand merci d'avance,
 
A+ ;)
 
BigBulle...

mood
Publicité
Posté le 09-02-2006 à 09:35:41  profilanswer
 

n°1301869
shreck
Posté le 09-02-2006 à 10:49:39  profilanswer
 

slt
tu nous montre ton code stp?

n°1301892
BigBulle
Posté le 09-02-2006 à 11:12:33  profilanswer
 

Bien sur :)!
 

Code :
  1. public class Class1()
  2. {
  3.    private bool flag = false;
  4.    public object Clone()
  5.    {
  6.         Class1 clone= new Class1();
  7.         // La ligne ci-dessous est fausse
  8.         clone.flag = this.flag;
  9.        
  10.         return clone;
  11.    }
  12. }


 
Dans le code ci-dessus, c'est le membre flag que je voudrais voir "synchronisé" entre clones...


Message édité par BigBulle le 09-02-2006 à 11:22:31
n°1301899
shreck
Posté le 09-02-2006 à 11:22:56  profilanswer
 

franchement , je sais pas , dsl

n°1301970
BigBulle
Posté le 09-02-2006 à 13:09:57  profilanswer
 

Bon ben voici une solution que j'ai trouvé pour ce cas particulié:
 

Code :
  1. public class Class1()
  2. {
  3.    private bool flag = false;
  4.    private ArrayList clones;
  5.    private bool Flag{
  6.       get{ return value;}
  7.       set{
  8.             foreach(Class1 clone in clones)
  9.                   clone.flag = value;
  10.            }
  11.    }
  12.    public Class1()
  13.    {
  14.        clones = new ArrayList();
  15.        clones.Add(this);
  16.    }
  17.    public object Clone()
  18.    {
  19.         Class1 clone= new Class1();
  20.         clone.flag = this.flag;
  21.         clone.clones.Add(this);
  22.         this.clones.Add(clone);
  23.         return clone;
  24.    }
  25. }


 
...ça me paraît quand même un peu énorme...
 
si vous avez d'autres idées ;)


Message édité par BigBulle le 09-02-2006 à 13:10:14
n°1301974
lorill
Posté le 09-02-2006 à 13:11:13  profilanswer
 

partagé entre toutes les instances, ou seulement entre les clones ?

n°1301991
BigBulle
Posté le 09-02-2006 à 13:27:16  profilanswer
 

Seulement entre les clones.  
Sinon la solution aurait été d'utiliser simplement un membre static ;)

n°1301995
lorill
Posté le 09-02-2006 à 13:30:04  profilanswer
 

ce que j'allais te proposer avant de relire le sujet, d'ailleurs [:joce]


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C#/.NET managed

  Variables pointant vers la même valeur

 

Sujets relatifs
message d'erreur : lien vers le serveur ne peut etre etabli... help!Lire des valeur sur le smbus?
[MySQL4 vers Oracle 10g]ORA-00955 Oracle Migration Workbench[MySQL4 vers Oracle 10g]error ORA-00907 migration avec OMWB
Client-serveur avec socket en C (client) vers PHP (serveur)[PHP&JAVASCRIPT] Probleme pour recuperer les variables d'un formulaire
Noms de variables et dossier dans une boucleNumérotation dans requête sql vers fichier Excel
Image aleatoire + lien automatique vers l'image taille réelle et .....export graphiques vers word VBA
Plus de sujets relatifs à : Variables pointant vers la même valeur


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR