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

  FORUM HardWare.fr
  Programmation
  Divers

  [SMALLTALK] spécialisation d'une instance d'une classe

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[SMALLTALK] spécialisation d'une instance d'une classe

n°1257064
mexx20
Posté le 01-12-2005 à 18:16:45  profilanswer
 

Je dispose d'un objet 'o := A new' qui évolue dans le système et devient à un moment de sa vie de type B.  
La classe B étant une classe fille de A. J'ai donc trouvé l'astuce suivante : créer une fonction 'asB' dans la classe A.
Mais j'ai le problème suivant, par exemple :
 
o1 := A new.    "o1 est du type A"
o2 := o1.
o1 var: 'val'
Ici 'o1' et 'o2' sont modifié ensemble, c'est ce que je veux.
(c'est à dire que en modifiant 'o1', je modifie également 'o2')
 
Par contre, dès que je spécialise l'un des deux objet, je perd cette propriété.
 
o2 := o1 asB.     "o2 se spécialise et devient du type B"
o1 var: 'autreval'
 
Ici la variable d'instance 'var' de o2 n'est pas mise-à-jour. En fait, 'o1' contient une ancienne version de 'o2'. Je voudrais que toute les références à cet objet se spécialisent ensemble, sans devoir les synchroniser toutes.
 
Le problème doit certainement venir de ma fonction 'asB' qui crée une nouvelle instance de B et copie les variables d'instances communes, puis renvoit cette instance.
 
Comment feriez-vous une fonction 'asB' qui 'fonctionne' ou bien auriez vous une autre façon de procéder ?


Message édité par mexx20 le 01-12-2005 à 18:19:38
mood
Publicité
Posté le 01-12-2005 à 18:16:45  profilanswer
 

n°1257510
mexx20
Posté le 02-12-2005 à 14:17:54  profilanswer
 

up

n°1257597
marsu_381
Posté le 02-12-2005 à 15:38:26  profilanswer
 

Bonjour,
Je pense que plutot qu'une methode d'instance il te faudrait une methode de classe. Dans laquelle la classe redefinirait ces instances
De me souvenirs de smalltalk je verais plus ca de cette facon.


Message édité par marsu_381 le 02-12-2005 à 15:39:48

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Divers

  [SMALLTALK] spécialisation d'une instance d'une classe

 

Sujets relatifs
Specialisation partielle de fonction membre de classes templates...PB gestion de classe alimentation liste deroulante par requette sql
init de la classe mère [résolu]Incapable de surcharge << avec Classe générique
[Javascript] set handler dans une classerecupere ou mettre a jour un tableau de double dans une classe
Probleme en C++ de classeProblème d'enregistrement des données dans une classe
[G++] Héritage de classe template, je sais c'est redondantUtiliser une constante définie en dehors d'une classe dans celle-ci
Plus de sujets relatifs à : [SMALLTALK] spécialisation d'une instance d'une classe


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