Zitat von
Johannes Maier:
Wenn ich schreibe:
arrBefehle: Array[0..2] of String = ('DEF', 'OUT', 'END');
dann kann ich aber den in-Operator nicht verwenden
gibt es da keine Möglichkeit?
Wenn du es sowieso konstant definierst, dann könntest du tatsächlich besser ein set nehmen:
Delphi-Quellcode:
type
TBefehl = (b_DEF, b_OUT, b_END);
TBefehle = set of TBefehl;
const
arrBefehle: Array[TBefehl] of String = ('DEF', 'OUT', 'END');
Das array benutzt du einfach nur zur umformung und rechnest dann mit den sauberen Sets und Enums. Man kann auch den namen, der elemente, holen und sich das array komplett sparen:
Delphi-Quellcode:
uses typInfo;
...
var b:TBefehl;
...
showMessage(GetEnumName(TypeInfo(TBefehle), integer(b));
allerdings ist das array hier schon ganu praktisch, denn...
showMessage( arrBefehl[b] );
ist halt einfacher. Wollte ich nurmal angemerkt haben. Weil mit strings rechnen ist ungeil
mâxîmôv.
{KDT}