[DUG] Why use a set when a string will work OK (and less code)?
Neven MacEwan
neven at mwk.co.nz
Thu May 10 11:37:20 NZST 2007
Nick
Thats why you use a lower case prefix ie tmsActive, tmsPending, ...
verssu tllNormal, tllError, tllEnded...
HTH
Neven
> Nice thats even shorter :-)
> So following on from this, what happens when you want to do something
> like this
>
> TMyStatus = (Active, Pending, Ended, Paused, Deleted, Suspended);
> TLogLevel = (Normal,Error,Ended);
>
> This will cause an error as Ended appears twice.
> How you can you get around this?
>
>
>
>
> Paul Heinz wrote:
>> Sean Cross wrote:
>>
>>
>>> TMyStatus = (Active, Pending, Ended, Paused, Deleted, Suspended);
>>> StatusMeanings = array[TMyStatus] of string = ('Active', 'Pending',
>>> 'Ended', 'Paused', 'Deleted', 'Suspended'); ...
>>> ShowMessage(StatusMeanings[Status]);
>>>
>>
>> Also, Delphi can do this for you using RTTI - this is how enum
>> properties work inside .dfms i.e. translating to/from string constants.
>>
>> Uses
>> TypInfo;
>>
>> ShowMessage(GetEnumName(TypeInfo(TMyStatus), Integer(Status));
>>
>> TTFN,
>> Paul.
>>
>> _______________________________________________
>> NZ Borland Developers Group - Delphi mailing list
>> Post: delphi at delphi.org.nz
>> Admin: http://delphi.org.nz/mailman/listinfo/delphi
>> Unsubscribe: send an email to delphi-request at delphi.org.nz with
>> Subject: unsubscribe
>>
>>
> _______________________________________________
> NZ Borland Developers Group - Delphi mailing list
> Post: delphi at delphi.org.nz
> Admin: http://delphi.org.nz/mailman/listinfo/delphi
> Unsubscribe: send an email to delphi-request at delphi.org.nz with
> Subject: unsubscribe
>
>
More information about the Delphi
mailing list