Questions about GC

Thomas vigipe3501 at preparmy.com
Tue Jun 23 01:03:37 UTC 2026


thank you, do you know how to reuse an array? it seems to reset 
the capacity when you set the length to 0, so it reallocates when 
you append to it
```
import std.stdio;
import std.format;

void main()
{
     int[] xs;

     foreach (i ; 0..3)
     {
         format("1: length:%s capacity:%s ptr:%s",xs.length, 
xs.capacity, xs.ptr).writeln;
         xs.length = 0;
         format("2: length:%s capacity:%s ptr:%s",xs.length, 
xs.capacity, xs.ptr).writeln;
         xs ~= i;
         format("3: length:%s capacity:%s ptr:%s",xs.length, 
xs.capacity, xs.ptr).writeln;
         writeln("------------------------");
     }
}
```

gives me
```
1: length:0 capacity:0 ptr:null
2: length:0 capacity:0 ptr:null
3: length:1 capacity:3 ptr:72DECA101020
------------------------
1: length:1 capacity:3 ptr:72DECA101020
2: length:0 capacity:0 ptr:72DECA101020
3: length:1 capacity:3 ptr:72DECA101060
------------------------
1: length:1 capacity:3 ptr:72DECA101060
2: length:0 capacity:0 ptr:72DECA101060
3: length:1 capacity:3 ptr:72DECA1010A0
------------------------
```


More information about the Digitalmars-d-learn mailing list