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 :

sens de "static_assert"


Sujet :

C++

  1. #1
    Membre confirmé
    Inscrit en
    Avril 2008
    Messages
    187
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 187
    Par défaut sens de "static_assert"
    Bonjour tous le monde

    je veux savoir c'est quoi le sens de la syntaxe static_assert ? pk j'ai pas trouvé un document qui parle de ça

    dans ma grammaire j'ai trouvé la déclaration suivante

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    static_assert (ExpressionConstante, ChaineDeCaractère);

  2. #2
    Expert éminent
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 395
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

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

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 395
    Par défaut
    Tu veux savoir comment ça s'utilise, ou à quoi ça sert?
    Déjà, sais-tu ce qu'est une assert ordinaire?
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  3. #3
    Membre confirmé
    Inscrit en
    Avril 2008
    Messages
    187
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 187
    Par défaut
    bon je veux savoir son rôle et son sens ? elle sert à quoi? pour que je puisse l'intégrer dans ma grammaire

    // par exemple sa syntaxe ressemple a une déclarationn de variable, appel d'une methode....

    pour le langage c++, j'ai jamais travaillé avec, mais j'essai de comprendre sa syntaxe

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

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 580
    Par défaut
    static_assert est une nouvelle fonctionnalité qui apparaitra avec la prochaine norme (C++0x, ou 1x au choix), en C++98/03 elle n'existe pas. Donc ça m'étonnerai que t'en est besoin pour ta grammaire.

  5. #5
    Expert éminent
    Avatar de koala01
    Homme Profil pro
    aucun
    Inscrit en
    Octobre 2004
    Messages
    11 644
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : Belgique

    Informations professionnelles :
    Activité : aucun

    Informations forums :
    Inscription : Octobre 2004
    Messages : 11 644
    Par défaut
    Salut,

    Le static_assert permet de vérifier, au moment de la compilation, si une condition est respectée ou non en:
    • faisant sortir la compilation sur une erreur
    • fournissant un message d'erreur plus ou moins compréhensible (correspondant à chaineDeCaractères).
    Cette possibilité n'existe pas dans la norme généralement mise en oeuvre, mais sera donnée dans la prochaine norme (C++0x en cours de finalisation), et, en attendant, il existe un comportement similaire dans boost

    Selon l'usage que tu prévois de faire pour ta grammaire, tu peux soit "simplement" laisser tomber cette information, soit le prendre en compte sous la forme d'une vérification à la compilation (dont l'argument principal est l'expression constante)
    A méditer: La solution la plus simple est toujours la moins compliquée
    Ce qui se conçoit bien s'énonce clairement, et les mots pour le dire vous viennent aisément. Nicolas Boileau
    Compiler Gcc sous windows avec MinGW
    Coder efficacement en C++ : dans les bacs le 17 février 2014
    mon tout nouveau blog

  6. #6
    Membre confirmé
    Inscrit en
    Avril 2008
    Messages
    187
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 187
    Par défaut
    ok, merci pour votre reponse

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