Was ist der bessere Programmierstil?



  • Moin Leute!

    Was ist der bessere Stil bei einer if-else-Anweisung?
    Mit geschweiften Klammer oder ohne?

    Sprich so:

    if(irgendwas < als_anderes)
    {
        tue_dies
        tue_jenes
    }
    

    Oder so?

    if(irgendwas < als_anderes)
        tue_dies
        tue_jenes
    

    Gruß Ivo



  • wenn du "jenes" immer ausgeführt haben willst, das zweite, ansonsten das erste. 😃



  • Sprich so:

    if(irgendwas < als_anderes)
    {
        tue_dies
        tue_jenes
    }
    
    if(irgendwas < als_anderes)
        tue_dies
        tue_jenes
    

    das hat nichts mit programmierstil zu tun da diese statements nicht äquivalent sind

    die geschweiften klammern verwendet man mal grob gesagt für "befehlsblöcke"
    also wenn du mehr als einen befehl hast,

    deine zweite if-anweisung wäre nämlich äquivalent zu dieser:

    if (irgendwas < als_anderes) {
        tue_dies
    }
    tue_jenes
    

    dem Compiler sind einrückungen egal



  • Genau, ohne geschweifte Klammern wird nur die erste Anweisung, die auf das else / if folgt, als dazu bedingt angesehen; Sprich: deine zweite Methode bewirkt folgendes:

    if(irgendwas < als_anderes)
    {
        tue_dies
    }
        tue_jenes
    

    Der beste Stil ist es, die Klammern immer zu schreiben; So kannst du auch Fehler bei nachträglicher Bearbeitung vermeiden (wenn du z.B. eine Zeile einfügst und dann auf einmal zwei oder mehr hast, aber vergisst, die geschweiften Klammern nachzutragen)...

    EDIT: Zu langsam...
    Naja, die einzige Sprache die ich kenne, die nach eintrückung zuordnet, ist Python...



  • Oh das hab ich noch gar nicht ausprobiert, das heist ohne Klammern wird nur die erste Anweisung in den if-Block eingebungen....

    Danke

    Gruß Ivo


Log in to reply