Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.291 Beiträge
 
Delphi 12 Athens
 
#8

AW: Konstantenausdruck in Case-Struktur funktioniert nicht

  Alt 22. Jul 2010, 11:27
'nen Grund kann ich mir nicht direkt vorstellen, außer die Speicherverwaltung betreffend.

Wobei man dieses vorallem für "schmutzige Tricks angewendet hat.

Delphi-Quellcode:
function test: Integer;
{$J+} // {$WRITEABLECONST ON}
const
  i: Integer = 0;
{$J-} // {$WRITAEBLECONST OFF}
begin
  i := i + 1;
  Result := i;
end;

ShowMessage(IntToStr(Test));
ShowMessage(IntToStr(Test));
ShowMessage(IntToStr(Test));
ShowMessage(IntToStr(Test));
So konnte man auch ohne OOP (private Felder) private und dennoch globale "Variablen" nutzen.

Toll finde ich übrigens auch diese Konstanten-Anwendung,
Das geht übrigens auch bei Records.
Und Typen kann man an dieser Stelle auch deklarieren.

Aber wenn du eine Konstante als Pointer übergeben willst/mußt, dann mußt du sie auch typisieren, damit sie nicht als Wert direkt am Verwendungsort eingebaut wird, sondern selber einen eigenen Speicherplatz und festen Typen besitzt.
Ein Therapeut entspricht 1024 Gigapeut.

Geändert von himitsu (22. Jul 2010 um 11:32 Uhr)
  Mit Zitat antworten Zitat