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 :

[précompilation] Class Logger


Sujet :

C++

  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    347
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 347
    Par défaut [précompilation] Class Logger
    Bonjour,


    Je ne connais pas trop la précompilation donc je fais appel à vous pour m'éclaircir les idées. J'ai trouvé un excellent lien donnant LA class pour les logger . Celle-ci me conviens très bien, car j'en utilise beaucoup mais en java.

    Le problème c'est qu'il y a certains point ou j'hésite :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    #ifdef ENABLE_LOGGER
     
    #define LOGGER_START(MIN_PRIORITY, FILE) Logger::Start(MIN_PRIORITY, FILE);
    #define LOGGER_STOP() Logger::Stop();
    #define LOGGER_WRITE(PRIORITY, MESSAGE) Logger::Write(PRIORITY, MESSAGE);
     
    #else
     
    #define LOGGER_START(MIN_PRIORITY, FILE)
    #define LOGGER_STOP()
    #define LOGGER_WRITE(PRIORITY, MESSAGE)
     
    #endif
    Où dois je mettre ce code ci dessus ! Et ou dois je définir ENABLE_LOGGER pour l'invalider ou l'activer !



    LOGGER_WRITE(Logger:EBUG, "trying to allocate buffer")
    Est ce que cette ligne (par exemple) sera compiler dans le code si je désactive ENABLE_LOGGER ou est ce que le compilateur comprend que par le #ifdef ENABLE_LOGGER qu'il ne faut inclure aucune méthode Logger.

    Je ne comprend pas cette ligne :LOGGER_START(Logger::INFO, "")


    Merci d'avance

  2. #2
    Membre chevronné
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    349
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : Suisse

    Informations forums :
    Inscription : Novembre 2005
    Messages : 349
    Par défaut
    Si tu fais un avant de passer dans ton bout de code, alors le sera juste et il passera par les trois premières lignes, sinon il passera par les trois suivantes.

    Ensuite les define agissent comme des macros, donc dans le premier cas appeler
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    LOGGER_START(MIN_PRIORITY, FILE)
    revient au même qu'appeler la méthode
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Logger::Start(MIN_PRIORITY, FILE);
    , alors que dans le second cas ça ne fera rien.

    Je suis pas sûr d'être très clair dans mes explications... As-tu bien compris le principe des #define?

Discussions similaires

  1. Création de classe logger
    Par SuperArbre dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 13/09/2013, 10h54
  2. Créer Class Logger
    Par MABB dans le forum C++
    Réponses: 5
    Dernier message: 18/05/2008, 05h34
  3. logger les classes java
    Par trollchichon dans le forum Tomcat et TomEE
    Réponses: 4
    Dernier message: 21/01/2008, 11h15
  4. Log4J Logger le nom de la classe parent
    Par drim dans le forum Logging
    Réponses: 3
    Dernier message: 04/03/2007, 18h15
  5. Réponses: 2
    Dernier message: 23/11/2006, 09h20

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