[fpc-pascal] Re: What is wrong with this enum and array related code
    Frank Church 
    vfclists at gmail.com
       
    Sun Sep 12 13:58:49 CEST 2010
    
    
  
I need to elaborate more on this code
On this line
d := stTypes[i - Ord(low(stType))];
since stTypes is an array, I expect stTypes[n], with n being 1 to 4,  to
retrieve an array value and as 'i - Ord(low(stType)) evaluates to integer it
should compile but it generates an error.
What would be the correct way?
On 12 September 2010 12:51, Frank Church <vfclists at gmail.com> wrote:
> program testnums;
> //{$APPTYPE CONSOLE}
>
> uses
>   Classes, SysUtils;
> type
>    stType = (stLite := -100, stDb, stBothLite, stBothDb); //settings
> location Type
>    stTypes = Array [stType] of integer;
> var
>  d : stType;
>  s : string;
>  i : integer;
> begin
>  writeln('');
>  for i := Ord(low(stType)) to Ord(high(stType)) do
>  begin
>   d := stTypes[i - Ord(low(stType))];
>    writestr(s,d);
>    writeln(d + ' ' + IntToStr(Integer(i)));
>  end;
>  readln;
>
> end.
>
> --
> Frank Church
>
> =======================
> http://devblog.brahmancreations.com
>
-- 
Frank Church
=======================
http://devblog.brahmancreations.com
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freepascal.org/pipermail/fpc-pascal/attachments/20100912/79c42c8f/attachment.html>
    
    
More information about the fpc-pascal
mailing list