Hello Benji,

Looking at the official docs, I can't find the D1 syntax for forcing a
struct to be allocated on the heap (so that it can safely be returned
from a function). I'm pretty sure it's possible (without wrapping the
struct in a class or an array), but I can't for the life of me
remember how it's done.

Thanks for your help!

--benji



Doesn't this work?

-----------------------------
struct sample { int a; int b; }

auto s = new sample;
-----------------------------

or even the long way, following the example of D custom class allocators (from D language manual):

----------------------------
struct sample
{
int a;
int b;
}

sample* p;

p = std.c.stdlib.malloc(sample.sizeof);
if (!p)
throw new OutOfMemoryException();
std.gc.addRange(p, p + sample.sizeof);
----------------------------------------

-JJR


Reply via email to