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

Langage C++ Discussion :

Utiliser la fonction Python eval() ou un equivalent dans un programme C++


Sujet :

Langage C++

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    12
    Détails du profil
    Informations personnelles :
    Âge : 29
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 12
    Points : 9
    Points
    9
    Par défaut Utiliser la fonction Python eval() ou un equivalent dans un programme C++
    Ben voila, tout est dans le titre.
    J'ai juste besoin de pouvoir calculer une expression située
    dans une chaine de caractères donc si qq'un a une idée
    pour faire ça le plus simplement possible il est le bienvenu.
    Merci d'avance pour vos réponses.

  2. #2
    Membre chevronné
    Avatar de Goten
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    1 580
    Détails du profil
    Informations personnelles :
    Âge : 33
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 580
    Points : 2 205
    Points
    2 205
    Par défaut
    Si tu veux utiliser du python interfacé avec du C++ alors tourne toi vers boost.python. Si tu veux une fonction en C++ qui fait la même chose va falloir expliciter plus que ça.. (je fais pas de python donc je sais pas ce que eval() est sensé faire)
    "Hardcoded types are to generic code what magic constants are to regular code." --A. Alexandrescu

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    12
    Détails du profil
    Informations personnelles :
    Âge : 29
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 12
    Points : 9
    Points
    9
    Par défaut
    Merci pour ta réponse.
    eval() calcule une expression située dans une chaine de caractere que l'on lui passe en parametre.
    Je connais pas boost, si ce n'est de nom, donc si qq'un pouvait me donner un exemple de code j'apprecierais.

  4. #4
    Inactif  
    Avatar de Mac LAK
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    3 893
    Détails du profil
    Informations personnelles :
    Âge : 49
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Octobre 2004
    Messages : 3 893
    Points : 4 846
    Points
    4 846
    Par défaut
    Ceci étant dit, les langages compilés comme C++ (ou C, ou Delphi, ou ... une tonne d'autres) sont très rarement adaptés à exécuter du code du type de eval()...

    Si vraiment tu dois le faire comme ça parce que l'expression est complexe, je pense que te tourner vers un langage interprété comme Python, LUA, PHP, etc. sera préférable. Surtout si la chaîne que tu veux évaluer contient des appels de fonctions...

    Sinon, c'est plus vraisemblablement un problème de logique et/ou d'algo : si tu veux ton "eval()" pour par exemple transformer la chaîne "12345" en l'entier 12345, il existe des fonctions C/C++ réalisant cette action.
    Mac LAK.
    ___________________________________________________
    Ne prenez pas la vie trop au sérieux, de toutes façons, vous n'en sortirez pas vivant.

    Sources et composants Delphi sur mon site, L'antre du Lak.
    Pas de question technique par MP : posez-la dans un nouveau sujet, sur le forum adéquat.

    Rejoignez-nous sur : Serveur de fichiers [NAS] Le Tableau de bord projets Le groupe de travail ICMO

Discussions similaires

  1. Réponses: 0
    Dernier message: 16/07/2013, 09h39
  2. Fonction qui marche seule mais plus dans un programme
    Par theclem35 dans le forum Débuter
    Réponses: 2
    Dernier message: 25/03/2011, 09h33
  3. Comment utiliser la fonction eval ?
    Par chtom dans le forum Langage
    Réponses: 1
    Dernier message: 29/05/2008, 16h46
  4. Réponses: 11
    Dernier message: 22/12/2003, 21h06
  5. impossible d'utiliser ma fonction dans un insert
    Par caramel dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 10/04/2003, 15h04

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