IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C++ Discussion :

Instanciation dynamique


Sujet :

C++

  1. #1
    Candidat au Club
    Inscrit en
    Février 2006
    Messages
    2
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 2
    Points : 2
    Points
    2
    Par défaut Instanciation dynamique
    Hey,

    Je me demandais comment en c++ sous linux (suse, compiation avec g++) pouvait on arriver a instancier dynamiquement une classe. C'est a dire a partir du nom de la classe obtenu pendant le runtime (et non a la compilation) se retrouver avec un objet de la classe donnee instanciee.
    Il parait que, en theorie c'est pas possible en c++ (alors qu'en java ca prend 5min) mais je sais qu'on peut contourner ca, je me souviens avoiur vu des sites donnant des combines pour y arriver (mais j'arrive plus a mettre la main dessus).

    En fait mon probleme est que j'ai un systeme devant executer un certain nombre de regles pour faire des calculs. Le truc est qu'Il faut pouvoir ajouter des regles sans interrompre l'execution. Toute solution (instantiation dynanmique ou pas) est la bienvenue. Ca ressemble de loin a un probleme classique d'IA mais je suis nul en IA.

    Merci beaucoup

    <le travail c'est la sante....>

  2. #2
    Membre éclairé Avatar de reggae
    Profil pro
    Inscrit en
    Août 2005
    Messages
    773
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Août 2005
    Messages : 773
    Points : 795
    Points
    795
    Par défaut
    Tout d'abord: bienvenu!
    Je suis désolé, mais j'ai pas tout compris...
    Est-ce que tu parles des templates?
    http://loulou.developpez.com/tutoriels/cpp/metaprog/

  3. #3
    Rédacteur
    Avatar de Laurent Gomila
    Profil pro
    Développeur informatique
    Inscrit en
    Avril 2003
    Messages
    10 651
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Avril 2003
    Messages : 10 651
    Points : 15 920
    Points
    15 920
    Par défaut
    Sujet déjà débattu pas mal de fois, essaye la recherche avancée.

    En résumé il te faut une factory, qui va prendre en paramètre l'identifiant sous forme de chaîne et te créer une instance de la classe correspondante. Avec un std::map pour gérer le tout, c'est très vite fait.

  4. #4
    Membre éclairé Avatar de reggae
    Profil pro
    Inscrit en
    Août 2005
    Messages
    773
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Août 2005
    Messages : 773
    Points : 795
    Points
    795
    Par défaut
    Voici un très bon lien concernant les maps:
    http://www.cppreference.com/cppmap/index.html

  5. #5
    Candidat au Club
    Inscrit en
    Février 2006
    Messages
    2
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 2
    Points : 2
    Points
    2
    Par défaut Bon je vais trouver autre choses
    Deja merci do vos reponses rapides. Mais je pense que je vais essayer de m'orienter vers une autre voie. En effet le c++ impose l'association au moins quelque part dans le code de la classe avec la factory et impossible d'y couper a moin d'une ultime bidouille. Et le truc c'est que je veux pouvoir rajouter des comportements (des classes) sans recompiler et meme sans arreter l'execution du systeme donc c'est mort pour cette solution.
    Je vais essayer de me renseigner sur des scripts pythons ou peut etre meme des systemes experts pour gerer toutes ces histoires d'IA.
    Merci a tous

  6. #6
    Rédacteur/Modérateur
    Avatar de JolyLoic
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2004
    Messages
    5 463
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2004
    Messages : 5 463
    Points : 16 213
    Points
    16 213
    Par défaut
    Pourtant, c'est tout à fait possible, en combinant le mécanisme de factory avec celui de bibliothèque dynamique...

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 3
    Dernier message: 19/07/2007, 22h10
  2. [c# 2.0] Instanciation dynamique de classe
    Par Arthis dans le forum ASP.NET
    Réponses: 3
    Dernier message: 10/10/2006, 18h03
  3. Instanciation dynamique d'un tableau
    Par polo54 dans le forum Collection et Stream
    Réponses: 4
    Dernier message: 08/06/2006, 10h37
  4. [VB.NET] instanciation dynamique
    Par lucie.houel dans le forum ASP.NET
    Réponses: 1
    Dernier message: 21/11/2005, 12h54
  5. Instanciation dynamique d'ActiveX
    Par cathar_rhythm dans le forum MFC
    Réponses: 12
    Dernier message: 28/06/2005, 08h11

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo