with ? do begin end



  • Unter Pascal gab's mal so ein schönes Statement

    with xyz do
      begin
      end;
    

    Damit konnte man verschachtelte Objekte einfacher adressieren, was vor allem die Übersichtlichkeit deutlich erhöht.

    Bsp.:

    grossesObjekt.kleinesObjekt.unterObjekt.zuAenderndeVariable = 10;
    

    wird zu

    with grossesObjekt.kleinesObjekt.unterObjekt do
    begin
      zuAenderndeVariable = 10;
      ebenfallsZuAenderndeVariable = 5;
      ...
    end;
    

    Das Einzige, was mir bisher dazu eingefallen wäre, wäre eine Alias-Definition, damit der ganze Rattenschwanz am Anfang ein bisschen kürzer wird.

    UnterObjekt &uo = grossesObjekt.kleinesObjekt.unterObjekt
    

    -> Gibt es auch in C/C++ sowas wie "with"?



  • Du hast es schon richtig erfasst, in C++ benutzt man dafür eine Referenz.

    Wobei ich erstmal überprüfen würde ob du so extrem lange Bezeichner durch ein anderes Design nicht umgehen kannst.
    Von den public-Variablen mal ganz abgesehen (siehe FAQ/Forensuche warum man die nicht benutzen sollte). 😉


Anmelden zum Antworten