Einzelnen Beitrag anzeigen

Rollo62

Registriert seit: 15. Mär 2007
4.094 Beiträge
 
Delphi 12 Athens
 
#1

case .. of kann kein break - Gibt es dafür einen rationalen Grund?

  Alt 8. Mai 2024, 11:51
Delphi-Version: 12 Athens
Hallo zusammen,

! Das ist kein Feature-Request.

Ich möchte nur verstehen, warum man in der Delphi/Pascal Sprache nicht ein einfaches case - break vorgesehen hat?

Delphi-Quellcode:
  case LMyVariable of
     TMyVariable.One: X := 1;
     TMyVariable.Two : begin

                                Mache1;

                                if MyCondition then
                                begin
                                    Mache2;
                                end;

                            end;
     TMyVariable.ThreeBlue: begin

                                Mache1;

                                if not MyCondition then
                                begin
                                    break; //<== DAS GIBT ES LEIDER NICHT =================
                                    goto CaseBreakLabel; //<== Wäre die einzige rationale Verwendung von goto, mach ich aber trotzdem nicht
                                end;

                                Mache2;

                            end;
     else
                            begin
                            end;
  end;
  
CaseBreakLabel:

  HierGehtsWeiter;
Ich möchte jetzt nicht unbedingt über die Funktion von break oder goto diskutieren.
Ich möchte nur verstehen, warum es die Design-Entscheidung bei Pascal gab, dies nicht reinzusetzen.

Da es bereits case-break in anderen Sprachen (C) gab, gehe ich davon aus, dass dies bei Pascal nicht einfach nur "vergessen" wurde.

Dafür muss es doch einen rationalen Grund für die Entscheidung gegeben haben.
Kennt den vielleicht jemand?
  Mit Zitat antworten Zitat