I was under the impression that alias this just was shorthand for
Class Foo {
int x;
alias x this;
}
Foo foo =  new Foo
foo = 9; // foo.x = 9
Foo Foo = 9 // null.x =9;

Also, for opCast, doesnt that only work for going from Foo to int and not
the other way around?

-Mike
On Oct 18, 2010 3:55 PM, "Steven Schveighoffer" <schvei...@yahoo.com> wrote:
> On Mon, 18 Oct 2010 15:47:40 -0400, Mike Chaten <mcha...@gmail.com> wrote:
>
>> In C++ it is possible to declare a class as follows
>> class Foo {
>> Foo(int x) { }
>> }
>> You can then use that constructor to implicitly convert int to Foo. E.g
>> Foo x = 0; //equivalent to Foo(0)
>>
>> Is there a way in D to do an implicit or explicit conversion from an
>> integral type to a class?
>
> explicit cast == opCast
> implicit cast == alias this
>
> Look up those two features in the docs.
>
> -Steve

Reply via email to