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

  FORUM HardWare.fr
  Programmation
  C++

  Instanciation d'objet dont le type est connu au runtime

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Instanciation d'objet dont le type est connu au runtime

n°155379
ashram79
Posté le 10-06-2002 à 10:03:34  profilanswer
 

bonjour
 
 
je voudrais savoir si cela est possible d'instancier un  
objet dont le type est connu à l'éxecution.
Par exemple, j'ais une variable chaîne de caractères qui s'appelle "type", et je voudrais faire qq chose du style
new type.
 
merci d'avance pour votre aide
a+

mood
Publicité
Posté le 10-06-2002 à 10:03:34  profilanswer
 

n°155383
Harkonnen
Modérateur
Un modo pour les bannir tous
Posté le 10-06-2002 à 10:07:57  profilanswer
 

en quel langage ?
si c'est Java, je sais pas  :sweat:  
si c'est en C++, tu peux parfaitement instancier un objet directement sur le tas
par exemple, pour instancier un objet de la classe CDialog (avec MFC):
 
CDialog *dlg = new CDialog();


---------------
J'ai un string dans l'array (Paris Hilton)
n°155391
ashram79
Posté le 10-06-2002 à 10:13:14  profilanswer
 

C en C++,
mais le pb avec ce que je veux faire c que le type  
est saisi par l'utilisateur ( sous la forme d'une chaîne de caractères ) donc au moment de coder il est inconnu

n°155401
antp
Super Administrateur
Champion des excuses bidons
Posté le 10-06-2002 à 10:23:26  profilanswer
 

En C++Builder il doit y avoir moyen en utilisant ce que Borland à rajouter à cause de Delphi (vu qu'en Delphi je crois qu'y a moyen)


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
n°155414
ashram79
Posté le 10-06-2002 à 10:28:38  profilanswer
 

Cool je travail avec Builder
Peux-tu me dire ce que c'est ?


Message édité par ashram79 le 06-10-2002 à 10:29:15
n°155428
El_gringo
Posté le 10-06-2002 à 10:37:56  profilanswer
 

HA bon !? Moi j'aurai affirmé qu'y a pas moyen !
Je vois pas bien comment on pourrait ajouter (ou modifier) du code compilé.

n°155433
ashram79
Posté le 10-06-2002 à 10:53:24  profilanswer
 

Je connais qq un qui l'a fait en java  
et ça marche  
mais en C++ c autre chose

n°155476
antp
Super Administrateur
Champion des excuses bidons
Posté le 10-06-2002 à 11:26:21  profilanswer
 

Non en fait y a peut-être pas moyen... On sait modifier les propriétés published des objets dérivant de TComponent, ou récupérer un pointeur vers un contrôle d'une Form en passant son nom en tant que chaîne, mais c'est tout, on sait pas le créer comme ça :/


Message édité par antp le 06-10-2002 à 17:20:14

---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
n°155480
ashram79
Posté le 10-06-2002 à 11:28:33  profilanswer
 

BOUHOU  :cry:

n°155530
LetoII
Le dormeur doit se réveiller
Posté le 10-06-2002 à 11:59:01  profilanswer
 

Y a un moyen, mais c pas top dans l'esprit de la conception objet.
 
Tu fait un classe abstraite dont vont dériver tout tes types.
Tu fais un membre(de classe) pour chaque classe dérivée qui détient le type de la classe. Tu fais une méthode de classe de ta classe mère qui prend un argument le type désiré et qui te renvoit un pointeur. Ensuite dans cette fonction tu teste le type et tu appel le bon constructeur. Tu renvoie ensuite l'adresse de l'objet créé.


---------------
Le Tyran
mood
Publicité
Posté le 10-06-2002 à 11:59:01  profilanswer
 

n°155685
ashram79
Posté le 10-06-2002 à 14:25:28  profilanswer
 

c plus ou moins ce que je fais mais c po bien
par rapport aux concepts objets


Message édité par ashram79 le 06-10-2002 à 14:25:52
n°155968
LetoII
Le dormeur doit se réveiller
Posté le 10-06-2002 à 16:58:06  profilanswer
 

Ben ouai, mais y a pas d'autres solutions à ma connaissance.


---------------
Le Tyran
n°155999
MelloW
Posté le 10-06-2002 à 17:17:41  profilanswer
 

Fais une recherche sur "Factory Method" et "Design Pattern". Je crois que c'est ce que tu recherches.

n°156004
zion
Plop
Posté le 10-06-2002 à 17:20:08  profilanswer
 

C'est tout a fait possible en Delphi et probablement en Builder aussi...
 
Déjà expliqué dans un topic ici y a qqs jours (fait une recherche sur le nom de la fonction je crois que j'ai détaillé un peu).
 
Va voir du côté de RegisterClass
 
 ;)


---------------
Informaticien.be - Lancez des défis à vos amis
n°156006
antp
Super Administrateur
Champion des excuses bidons
Posté le 10-06-2002 à 17:20:47  profilanswer
 

mince je l'avais oublié ce truc là :o


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
n°156008
zion
Plop
Posté le 10-06-2002 à 17:21:16  profilanswer
 

antp a écrit a écrit :

Non en fait y a peut-être pas moyen... On sait modifier les propriétés published des objets dérivant de TComponent, ou récupérer un pointeur vers un contrôle d'une Form en passant son nom en tant que chaîne, mais c'est tout, on sait pas le créer comme ça :/  




 
si  [:totocom]


---------------
Informaticien.be - Lancez des défis à vos amis
n°156011
antp
Super Administrateur
Champion des excuses bidons
Posté le 10-06-2002 à 17:22:01  profilanswer
 

ho ça va hein :p
tu me le fais remarquer par icq, pas besoin de le répéter 2x sur le forum :kaola:


Message édité par antp le 06-10-2002 à 17:22:08

---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
n°156014
zion
Plop
Posté le 10-06-2002 à 17:22:56  profilanswer
 

antp a écrit a écrit :

ho ça va hein :p
tu me le fais remarquer par icq, pas besoin de le répéter 2x sur le forum :kaola:  




 
 :fuck:


---------------
Informaticien.be - Lancez des défis à vos amis
n°156018
zion
Plop
Posté le 10-06-2002 à 17:24:03  profilanswer
 

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

  Instanciation d'objet dont le type est connu au runtime

 

Sujets relatifs
[c] "dereferencing pointer to incomplete type"Utiliser un CSS selon le type de navigateur
quel est l'objet pour mettre en page sous access...[java]instancier un objet dans un process séparé
Problème avec un champ type "radio" + XHTML[VB] opérateur New avec objet Winsock...
[Delphi Interbase] Problème avec un champ de type Time[Interbase] Comment déclarer un champ de type image ?
[javascript] changer le type d'un input en password lorsqu'on clique ?[DOM] J'aimerais transformer une String en Objet document
Plus de sujets relatifs à : Instanciation d'objet dont le type est connu au runtime


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