Why can't we derive struct's?
Guillaume Piolat
first.last at gmail.com
Fri Dec 21 15:39:39 UTC 2018
On Thursday, 20 December 2018 at 03:42:08 UTC, Walter Bright
wrote:
>
> Because polymorphism makes little sense for a value type.
>
What happens is in D we often want:
A - deterministic destruction
AND
B - reference semantics
AND
C - sub-typing (interfaces / alias this)
`class` does B and C, and even A when emplaced, but not that easy
to use. Don't work in -betterC. GC will call destructors which
breaks (A) if we aren't careful.
`struct` does A, B when wrapped, that not C very well.
More information about the Digitalmars-d
mailing list