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 :

compilation conditionelle, séparer le code selon l'archi


Sujet :

C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Candidat au Club
    Inscrit en
    Février 2006
    Messages
    2
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 2
    Par défaut compilation conditionelle, séparer le code selon l'archi
    bonjour a tous,

    je développe une appli windows/MacOS, et j'aimerai pouvoir appliquer des bouts de code selon l'architecture sur laquelle tourne le programme. En gros j'aimerai pouvoir utiliser une macro comme suit:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    #ifdef WINDAUBE
    //code pour windows
    #endif
    ou
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    #ifdef MACOS
    //code pour MacOS
    #endif

    Quelqu'un pourrait-il m'indiquer le meilleur moyen de le faire? Merci beaucoup.

    Leskimo

  2. #2
    Membre éprouvé
    Profil pro
    Inscrit en
    Août 2003
    Messages
    159
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2003
    Messages : 159
    Par défaut
    a priori:
    - c'est plutôt WIN32 positionné pour windows et
    - _MAC pour MacOS

  3. #3
    Membre confirmé Avatar de BigNic
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    195
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Décembre 2004
    Messages : 195
    Par défaut
    si cela peut t'aider on déjà discuté du sujet. C'était par pour ces deux OS, mais il ya peut-être des bonnes idées a prendre.

    http://www.developpez.net/forums/vie...454&highlight=

  4. #4
    Expert confirmé

    Homme Profil pro
    pdg
    Inscrit en
    Juin 2003
    Messages
    5 756
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : pdg

    Informations forums :
    Inscription : Juin 2003
    Messages : 5 756
    Billets dans le blog
    3
    Par défaut
    C'est une façon de faire. Une autre, plus élégante:
    - fichier.h qui contient les déclarations communes à toutes les archi
    - fichier_win32.cpp : implémentation pour Windows
    - fichier_mac.cpp : implémentation pour Mac
    et c'est à la compilation (dans le makefile par exemple) que le bon fichier est sélectionné et compilé.

  5. #5
    Candidat au Club
    Inscrit en
    Février 2006
    Messages
    2
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 2
    Par défaut
    Je n'avais meme pas pensé à faire des fichiers d'implémentation séparés, je vais certainement choisir cette méthode, ca me parait etre celle qui alourdira le moins mon code. Dans tous les cas, merci a tous pour vos réponses.

    Leskimo

Discussions similaires

  1. [Débutant] Compiler glu.h sous Code::Blocks
    Par allanp8 dans le forum OpenGL
    Réponses: 10
    Dernier message: 18/11/2007, 00h56
  2. Compiler un sln par code c#
    Par wonderliza dans le forum C#
    Réponses: 6
    Dernier message: 13/09/2007, 11h12
  3. Ne pas compiler certains bouts de code
    Par martt_1er dans le forum C++
    Réponses: 11
    Dernier message: 01/06/2007, 14h32
  4. [Séparer son code] quelques petites questions.
    Par echantillon dans le forum C
    Réponses: 33
    Dernier message: 07/03/2007, 17h29
  5. Réponses: 5
    Dernier message: 09/04/2006, 19h02

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