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

MFC Discussion :

options de compilation


Sujet :

MFC

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    118
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 118
    Par défaut options de compilation
    Bonjour,
    Je souhaite, avec visual C++ version 7, insérer des options de compilation :
    J'ai trois objets différents qui étendent de la même classe. Selon l'option de compilation choisie, c'est un des trois objets qui sera instancié lors de l'éxecution de mon programme. Est ce que quelqu'un sait comment faire cela?
    Merci d'avance,
    Alex.

  2. #2
    Membre chevronné Avatar de Mayti4
    Inscrit en
    Février 2004
    Messages
    442
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 442
    Par défaut
    Utiliser le préprocesseur ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    #ifdef _DEBUG
      obj = new ObjetDebug();
    #else
      obj = new Objet();
    #endif

  3. #3
    r0d
    r0d est déconnecté
    Membre expérimenté

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2004
    Messages
    4 288
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2004
    Messages : 4 288
    Billets dans le blog
    2
    Par défaut
    Bonjour,

    dans les options de compilations, dans C/C++->General->Preprocessor definitions, tu peut définir tes propres variables. Par exemple, _TOTO (attention à séparer chaque variable par une virgule).

    Du coup, comme l'a indiqué Mayti4, tu peux gérer ta compilation avec des #ifdef
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    ClasseMere* instance = NULL;
    #ifdef _TOTO
    instance = new ClasseFille1();
    #endif
    #ifdef _TITI
    instance = new ClasseFille2();
    #endif
    if (instance)
    {
       // le code
    }

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    118
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 118
    Par défaut
    Citation Envoyé par Mayti4
    Utiliser le préprocesseur ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    #ifdef _DEBUG
      obj = new ObjetDebug();
    #else
      obj = new Objet();
    #endif
    Je n'ai pas très bien compris ta réponse mais oui, je pense que se sera quelque chose comme ça (je ne maitrise pas très bien microsoft vc++).
    Mais j'ai 3 objets différents (pour l'instant car après je pourrai peut etre en avoir plus).
    Je me suis peut etre mal exprimé. Immaginons l'objet "Transport" et "Bateau" "Voiture" "Train" étendent de "Transport".
    J'aimerais que lorsque un développeur ouvre le projet visual, il change une option de compilation pour choisir l'objet "Voiture" par exemple, il génère la solution et hop, son exécutable simule une voiture...
    Je ne sais pas si c'est possible mais je pense que oui car il me semble que ce serait assez facile a faire avec un makefile en changeant de cible...
    Merci.

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    118
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 118
    Par défaut
    Citation Envoyé par r0d
    Bonjour,

    dans les options de compilations, dans C/C++->General->Preprocessor definitions, tu peut définir tes propres variables. Par exemple, _TOTO (attention à séparer chaque variable par une virgule).

    Du coup, comme l'a indiqué Mayti4, tu peux gérer ta compilation avec des #ifdef
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    ClasseMere* instance = NULL;
    #ifdef _TOTO
    instance = new ClasseFille1();
    #endif
    #ifdef _TITI
    instance = new ClasseFille2();
    #endif
    if (instance)
    {
       // le code
    }
    Ok, merci. Je vais regarder... et je vous tiens au courrant.

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    118
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 118
    Par défaut
    Excellent, ça à l'air assez facile.
    Merci bcp.

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

Discussions similaires

  1. [compilateur cc] Options de compilation
    Par gangsoleil dans le forum Autres éditeurs
    Réponses: 2
    Dernier message: 26/09/2005, 15h25
  2. Option de compilation gcc : sem.h
    Par Luther13 dans le forum Linux
    Réponses: 8
    Dernier message: 29/12/2004, 12h29
  3. [Compilateur]Option de compil
    Par Guybrush dans le forum Eclipse Java
    Réponses: 3
    Dernier message: 30/09/2004, 11h22
  4. Réponses: 2
    Dernier message: 15/05/2004, 18h33
  5. Réponses: 2
    Dernier message: 27/02/2004, 13h47

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