[fpc-pascal] Arrays of objects
    Joao Morais 
    post at joaomorais.com.br
       
    Wed Oct 31 12:10:28 CET 2007
    
    
  
Adrian Maier wrote:
> On 10/31/07, Matt Emson <memsom at interalpha.co.uk> wrote:
>> Adrian Maier wrote:
>>> Hello,
>>>
>>> I'm seeking for advice about which is the best way to hold an array of
>>> class instances
>>> I need to access the elements using its position (like a regular
>>> array) , and also i'd like
>>> the structure to grow when I add more elements
>> TObjectList
> 
> I am aware that TObjectList is one of the possible ways.
> But I was hoping to get a better understanding about the purpose of these
> various classes or types of array ,  and more importantly what are the
> drawbacks .
> 
> Is there really no wiki page , tutorial, anything  that provides an overview of
> the collections and types of arrays that FPC has ?
You can use dynamic arrays, they work like an ansi string:
var
   VArray: array of TSomeClass;
begin
   SetLength(VArray, 10);
   // now you have VArray[0] .. VArray[9];
   SetLength(VArray, 20);
   // now you have [0] .. [19];
   // Length(VArray) = 20
   // for I := 0 to Pred(Length(VArray)) is a valid statement
They are reference counted, just like ansi strings, ie don't worry about 
memory leakages.
--
Joao Morais
    
    
More information about the fpc-pascal
mailing list