Opaque handles...

Manu turkeyman at gmail.com
Wed Sep 18 09:19:22 PDT 2013


On 19 September 2013 02:14, Andrej Mitrovic <andrej.mitrovich at gmail.com>wrote:

> On 9/18/13, Manu <turkeyman at gmail.com> wrote:
> > And in D:
> >
> >   struct Thing;
> >   extern (C) Thing* MakeThing();
> >
> > The question is, does this suck?
> > D currently can't allocate an array of Thing*'s for some weird reason.
>
> This is just a current bug that will be fixed. As a workaround you can use
> this:
>
> struct Thing
> {
>     @disable this();
>     @disable this(this);
> }
>
> This will ensure "Thing" will never be copied by value, and you can
> only use it with a pointer.
>

But since I'm always dealing with a pointer rather than a real type, I
can't implement logic to inc/dec the ref-count on assignment. And how do I
handle destruction/garbage collection?
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.puremagic.com/pipermail/digitalmars-d/attachments/20130919/b2e78c9b/attachment.html>


More information about the Digitalmars-d mailing list