[Gambas-user] Do embeded objects get released too upon destruction ?

Benoît Minisini gambas at ...1...
Sat Jul 23 15:26:56 CEST 2011


> Question:
> 
> If I have a class 'myClass' with the following:
> 
>     DIM k = NEW OBJECT[100]
> 
>     PUBLIC SUB _init()
> 
>        DIM i AS INTEGER
> 
>        FOR i = 1 TO 100
>           k[i] = NEW STRING[]      'add a string array
>           k[i].add("HELLO")        'add one element with "HELLO"
>        NEXT
> 
>     END
> 
> 
> Somewhere else I have:
> 
>     DIM Q AS NEW myClass[5]        ' constructor executes 5 times

No : you are creating an array of myClass references, but you are not creating 
any myClass object at all.

And this is a normal array, not an embedded one.

> 
>     Q[2] = NULL   '<---will the embeded string memory get freed too
>                        when the myClass object is freed ??

What is "string memory" ?

Anyway a myClass object will be freed as soon as nothing has a reference on 
it.

Regards,

-- 
Benoît Minisini




More information about the User mailing list