Es ist ungefähr 20 Jahre her, dass ich zuletzt in Pascal schreiben musste. Ich kann nicht scheinen, die Strukturelemente der Sprache richtig zu verwenden, wo ich neste, wenn Blöcke mit Anfang und Ende blockieren. Zum Beispiel erhält dies einen Compiler Error "Identifier Expected"
%Vor% Natürlich, wenn ich den if then
Block und die begin end
Blöcke, die mit ihnen verbunden sind, entferne, ist alles in Ordnung.
Manchmal bekomme ich diese Syntax richtig und es funktioniert OK, aber die Probleme werden beim Verschachteln der if then else
Blöcke ärgerlich.
Das Lösen des Problems ist hier nicht genug. Ich möchte besser verstehen, wie man diese Blöcke benutzt. Mir fehlt eindeutig ein Konzept. Irgendetwas aus C ++ oder C # kommt wahrscheinlich aus einem anderen Teil meines Verstandes und verwirrt mein Verständnis. Ich habe ein paar Artikel darüber gelesen, und ich glaube, ich verstehe es und dann nicht.
Sie müssen jedes begin
mit einem end
auf der gleichen Ebene wie
Sie können die Anzahl der verwendeten Zeilen verkürzen, ohne die Platzierung zu beeinflussen. (Das oben genannte kann jedoch einfacher sein, wenn Sie sich zuerst an die Syntax gewöhnen.)
%Vor% Wenn Sie eine einzelne Anweisung ausführen, ist begin..end
optional. Beachten Sie, dass die erste Bedingung kein abschließendes ;
enthält, da Sie die Anweisung noch nicht beenden:
Das Semikolon ist optional bei der letzten Anweisung in einem Block (obwohl ich es normalerweise auch bei der Option einschließe, um zukünftige Probleme zu vermeiden, wenn Sie eine Zeile hinzufügen und vergessen, die vorherige Zeile gleichzeitig zu aktualisieren).
%Vor%Sie können auch einzelne und mehrere Anweisungsblöcke kombinieren:
%Vor%Die richtige Verwendung für Ihren Code wäre:
%Vor%Tags und Links delphi inno-setup pascal pascalscript