Thanks guys

It seems perverse that you can get the ordinal value of a set

Regards Neven

N.K. MacEwan B.E. E&E


----- Original Message -----
From: Aaron Scott-Boddendijk <[EMAIL PROTECTED]>
To: Multiple recipients of list delphi <[EMAIL PROTECTED]>
Sent: Wednesday, 8 March 2000 17:13
Subject: Re: [DUG]: Quantity of a Set


> > procedure TForm1.Button1Click(Sender: TObject);
> > Type
> >   MySet = (chris, john, bob, mary, fred, pam);
> >   MyXSet =  set of MySet;
> > Var
> >   y : MyXSet;
> >   j : Integer;
> >   Size : Integer;
> > begin
> >   y := [chris, pam, mary];
> >   Size := 0;
> >   for j := ord(Low(MySet)) to ord(high(MySet)) do    // Iterate
> >     if (MySet(j) in y) then
> >       Inc(Size);
> >   ShowMessage('size = '+Inttostr(Size));
> > end;
> >
> > There is probally a better way..
>
> Only getting rid of some unnecessary casts and references to Type names.
>
> procedure TForm1.Button1Click(Sender: TObject);
> type
>   TMyEnum = (meOne,meTwo,meThree);
>   TMyEnums = set of TMyEnum;
> var
>   Y :TMyEnums;
>   Size :Integer;
>   J :TMyEnum;
> begin
>   Size := 0;
>   for J := Low(J) to High(J) do if J in Y then inc(Size);
>   ShowMessage('Size = '+IntToStr(Size));
> end;
>
> --
> Aaron Scott-Boddendijk
> Jump Productions
> (07) 838-3371 Voice
> (07) 838-3372 Fax
>
>
> --------------------------------------------------------------------------
-
>     New Zealand Delphi Users group - Delphi List - [EMAIL PROTECTED]
>                   Website: http://www.delphi.org.nz
>

---------------------------------------------------------------------------
    New Zealand Delphi Users group - Delphi List - [EMAIL PROTECTED]
                  Website: http://www.delphi.org.nz

Reply via email to