Einzelnen Beitrag anzeigen

PeterPanino

Registriert seit: 4. Sep 2004
1.465 Beiträge
 
Delphi 10.4 Sydney
 
#6

AW: Konstantenausdruck in Case-Struktur funktioniert nicht

  Alt 22. Jul 2010, 11:14
Danke für die Hinweise. Ich hatte immer die relativ strenge Typisierung von Delphi im Hinterkopf - aber es ist ja auch wieder logisch, dass bei einer Wertzuweisung in der Konstanten-Deklaration eine Angabe des Wertebereiches unnötig ist. Und außerdem bin ich davon ausgegangen, dass alles, was unter const deklariert wird, auch automatisch eine Konstante ist.

Nur: Hat die Unterscheidung zwischen "echten Konstanten" und "schreibgeschützten Variablen" einen praktischen Grund oder Sinn - d.h. gibt es Anwendungsfälle, wo einmal die Verwendung von "echten Konstanten" und dann wieder die Anwendung von "schreibgeschützten Variablen" angebracht ist? Oder anders ausgedrückt: Was hat Borland (?) sich dabei gedacht, als es diese Unterscheidung einführte?

Toll finde ich übrigens auch diese Konstanten-Anwendung, bei der die Klasse nicht instantiiert werden muss, um sie zu benutzen:

Code:
type
  TClassWithConstant = class
    public
      const SomeConst = 'This is a class constant';
  end;         

procedure TForm1.FormCreate(Sender: TObject);
begin
  ShowMessage(TClassWithConstant.SomeConst);
end;
  Mit Zitat antworten Zitat