Gegen die frühere Form ( K & R-Stil ) ist nichts einzuwenden (solange sie eingerückt ist). Sie wird häufig in Sprachen mit dieser Art von Syntax verwendet (C, Java, Perl).
Es ist z.B. der Java Standard und IMO recht lesbar (solange es richtig eingerückt ist). [ Da mql4 sich stark an die C-Syntax anlehnt, denke ich, dass die Erwähnung dieser anderen Sprachen relevant ist ]
Es sollte jedoch eingerückt werden:
if(a==b){
Dothis;
Dothis;
etc;
}
Das 2. Beispiel ( Allman-Stil ) wird ebenfalls von einigen bevorzugt und gilt allgemein als besser lesbar (wiederum mit korrekter Einrückung).
if(a==b)
{
Dothis;
Dothis;
etc;
}
aber die Methode, die Sie anscheinend ablehnen, ist anderswo recht beliebt (aus Gründen der Lesbarkeit)
Ihr letztes Beispiel gefällt mir überhaupt nicht.
allman-Stil ist es auch einfacher, fehlende Klammern zu erkennen, insbesondere bei komplexen Bäumen.
Der Stil der Klammern ist eine Vorliebe des Programmierers, es gibt imo keine richtige oder falsche Methode. Der K&R-Stil ist der beste ;-). Warum eine zusätzliche Zeile für eine öffnende geschweifte Klammer .... Was mich wirklich interessiert ist, zu welcher if{Anweisung} sie gehört. Zum Beispiel was besser aussieht und leichter zu verstehen ist.
if(.............................) { if(.............................) { if(.............................) { if(.............................) { if(.............................) { if(.............................) { if(.............................) { if(.............................) { if(.............................) { if(.............................) { } } } } } } } } } }
Oder diese Version:
if(.............................){ if(.............................){ if(.............................){ if(.............................){ if(.............................){ if(.............................){ if(.............................){ if(.............................){ if(.............................){ if(.............................){ } } } } } } } } } }
Und noch besser.
if( !.............................) return if( !.............................) return if( !.............................) return if( !.............................) return if( !.............................) return if( !.............................) return if( !.............................) return if( !.............................) return if( !.............................) return if( !.............................) returnImo, die letzte Version fühlt sich natürlicher an, als wenn ich im wirklichen Leben schreibe. Zeile für Zeile.
Ich mache das so:
if(.............................) {if(.............................) {if(.............................) {if(.............................) {if(.............................) {if(.............................) {if(.............................) {if(.............................) {if(.............................) {if(.............................) }}}}}}}}}
Mir gefällt die Diskussion.
Und was ist mit der Präferenz bei der Codierung der else-Anweisung . Ich bevorzuge das erste Beispiel, obwohl einige Editoren solche Blöcke nicht ein- und ausklappen können. Das zweite Beispiel ist ein Kompromiss. Das dritte Beispiel ist noch konsistenter, aber unleserlich.
if (cond) { command; } else if (cond) { command; } else { command; }
oder
if (cond) { command; } else if (cond) { command; } else { command; }
oder
if (cond) { command; } else { if (cond) { command; } else { command; } }

Ich benutze else nicht mehr oft. Es gab ein Problem, bei dem ich vor einiger Zeit gezwungen war, else zu benutzen (ich kann mich nicht mehr an das Problem erinnern). Wenn ich else verwendet habe, ging es ungefähr so.
if (cond) { command; } else if (cond) { command; } else { command; }
Nun aber meine erste gelehrt auf die Codierung etwas wie oben wäre.
if( cond ){ command; return; } if( cond ){ command; return; } command;
Ja, ich werde einen dreizeiligen Code in eine Funktion verwandeln 8)))
ich mache wenn sonst so

Bis zu einem gewissen Grad spielt das keine Rolle, die Hauptsache ist, dass der gewählte Stil konsequent angewendet wird ... wir alle haben natürlich unsere eigenen Vorlieben
Stimme mit Raptor überein. Thema über nichts. Ich bin viel mehr frustriert, wenn Leute ihren Code hier posten, ohne SRC zu verwenden. Wie sie ihr Programm codieren, ist ihre Sache, es sei denn, sie wollen um Hilfe bitten.

- Freie Handelsapplikationen
- Über 8.000 Signale zum Kopieren
- Wirtschaftsnachrichten für die Lage an den Finanzmärkte
Sie stimmen der Website-Richtlinie und den Nutzungsbedingungen zu.
Ich sehe das oft, wenn Leute ihren Code posten.
if(a==b){ Dothis; Dothis; etc; }
Das ist kein Problem, wenn man kurze Teile des Codes anderer Leute liest.
Aber wenn es sich um viel Code handelt, kann es fast unmöglich sein, ihm zu folgen.
Ich würde denken, dass es vielen schwer fällt, Fehler in ihrem eigenen Code zu finden.
Warum nicht das?