Proper-Struktursyntax für Pascal if then begin end and; (im Inno Setup)
Es ist ungefähr 20 Jahre her, dass ich das letzte Mal in Pascal schreiben musste. Ich kann nicht scheinen, die Strukturelemente der Sprache richtig zu verwenden, in der ich als Blöcke verschachtele, die Anfang und Ende verwenden. Zum Beispiel bekomme ich einen Compiler-Fehler "Bezeichner erwartet"
procedure InitializeWizard;
begin
Log('Initialize Wizard');
if IsAdminLoggedOn then begin
SetupUserGroup();
SomeOtherProcedure();
else begin (*Identifier Expected*)
Log('User is not an administrator.');
msgbox('The current user is not administrator.', mbInformation, MB_OK);
end
end;
end;
Natürlich, wenn ich das @ entferif then
Block und dasbegin end
Blöcke mit ihnen verbunden, dann ist alles in Ordnung.
Manchmal bekomme ich diese Art von Syntax richtig und es funktioniert, aber die Probleme werden ärgerlich, wenn das @ verschachtelt wiif then else
Blöcke
Lösung des Problems ist hier nicht genug. Ich möchte ein besseres Verständnis für die Verwendung dieser Blöcke haben. Mir fehlt eindeutig ein Konzept. Etwas aus C ++ oder C # schleicht sich wahrscheinlich aus einem anderen Teil meines Verstandes ein und bringt mein Verständnis durcheinander. Ich habe ein paar Artikel darüber gelesen und denke, ich verstehe es und tue es dann nicht.