Forum: Object-Pascal / Delphi-Language
Delphi
by himitsu,
10. Nov 2020
Das Array ist zwar eine Konstante, aber auch nicht,
und dein Zugriff auf dieses Array cMfc_MessageTypes ist somit auch nicht konstant.
"typisierte" Konstanten sind eigentlich nur "schreibgeschützte" Variablen.
const
A = 0; // "echte" Konstante
B: Integer = 0; // Konstante (aber intern eine schreibgeschützte globale Variable)
{$IF A = 1} miep {$IFEND}
Forum: Object-Pascal / Delphi-Language
Delphi
by himitsu,
10. Nov 2020
Entweder if x = cMfc_MessageTypes then y else if ...
oder du mußt eben dort Konvertieren, wo du keine Konstante brauchst.
case cMfc_IntToMessageTypes(x) of
MMT_Inserted: y;
end;
Ginge als Funktion oder als Array tMfc_MessageTypeArray = array of tMfc_MessageTypes;, nur hat dann dein Array natürlich viele Lücken, welche in der Array-Konstante dann mit irgendwas gefüllt werden müssten....