Nullable or Optional? Or something else?
Steven Schveighoffer
schveiguy at yahoo.com
Thu Sep 3 08:10:27 PDT 2009
On Wed, 02 Sep 2009 16:54:30 -0400, Andrei Alexandrescu
<SeeWebsiteForEmail at erdani.org> wrote:
> grauzone wrote:
>> Andrei Alexandrescu wrote:
>>> I plan to add a Nullable struct to Phobos (akin to C#'s Nullable,
>>> Boost's Optional).
>>>
>>> Apparently a good design is to define Optional!T with a minimum of
>>> member functions (ideally none) and have it use the "alias this"
>>> feature to masquerade as a T. That way Optional!T looks and feels much
>>> like a T, except that it supports a function
>> I still don't understand how one can feel comfortable with the fact,
>> that "alias this" can overshadow arbitrary members of the alias'ed type.
>
> That's why I want to add no member functions to Optional. The test for
> null will be a free function.
How does Optional!valuetype support this:
Optional!valuetype x;
x = null;
Don't you need opAssign?
-Steve
More information about the Digitalmars-d
mailing list