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 Delphi Discussion :

[Compilateur] Optimisation des conditions


Sujet :

Langage Delphi

  1. #1
    Rédacteur
    Avatar de Pedro
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    5 411
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 5 411
    Points : 8 078
    Points
    8 078
    Par défaut [Compilateur] Optimisation des conditions
    Salut

    Je voudrais savoir un chose.

    Si je fais:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
      if (a=1) and (b=2) and ... then
    Est-ce qu'une fois l'exe créé, il teste toutes les conditions une par une et opère les combinaisons après ou bien les fait à la suite et s'arrête quand une condition n'est pas vérifiée?

    Sinon, pour des soucis d'optimisation, il vaut mieux faire :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
      if a=1 then
        if b=2 then
          ...
    Dans cet exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    const i=0;
    begin
      if (i<>0) and (25/i>1) then
    end;
    Est-ce que puisque i est égal à 0, il ne testera pas la seconde condition, ou bien teste les deux et affichera un message d'erreur? Et puis s'il les teste les unes après les autres en s'arrêtant dès que la condition n'est pas vérifiée, dans quel ordre les effectue-t-il?

  2. #2
    Membre expérimenté

    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    685
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 685
    Points : 1 608
    Points
    1 608
    Par défaut
    Si la case "Evaluation booléenne complète" n'est pas cochée dans les options du compilateur, Delphi abandonnera dès qu'une condition sera fausse.

    On pourra faire ce style de code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    if (Assigned(MonObject)) and (MonObjet.MaPropriete=true) then
      //Si MonObject=nil, la ligne ci-dessus déclenchera PAS d'erreur.

  3. #3
    Rédacteur
    Avatar de Pedro
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    5 411
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 5 411
    Points : 8 078
    Points
    8 078
    Par défaut
    OK merci bien!!

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

Discussions similaires

  1. Réponses: 5
    Dernier message: 24/08/2011, 10h13
  2. [Débutant] Implementer des conditions de KKT dans un problème d'optimisation
    Par membreComplexe12 dans le forum MATLAB
    Réponses: 2
    Dernier message: 17/02/2011, 08h02
  3. Réponses: 2
    Dernier message: 10/07/2008, 09h29
  4. Compilateur test des conditions dans un if
    Par BenoitM dans le forum Framework .NET
    Réponses: 4
    Dernier message: 03/10/2007, 10h07

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