How to free memory ater use of "new" to allocate it.
Alain De Vos
devosalain at ymail.com
Mon Jul 17 10:17:37 UTC 2023
The following code works:
```
import std.stdio:writefln;
import object: destroy;
import core.memory: GC;
import core.stdc.stdlib: malloc,free;
import std.typecons;
class C {
int * pa;
int [] a;
// Constructor
this() {writefln("Called constructor");
pa=cast(int *)malloc(1000*int.sizeof);
a=pa[0..1000];
}
~this(){
writefln("Called Destructor");
free(a.ptr);}
}
void dofun()
{
auto x=scoped!(C);
x.a[3]=5;
writefln("%12x",&x);
}
int main(){
dofun();
dofun();
return 0;
}
```
More information about the Digitalmars-d-learn
mailing list