Properties: a.b.c = 3

Steven Schveighoffer schveiguy at yahoo.com
Thu Jul 30 11:50:04 PDT 2009


On Thu, 30 Jul 2009 14:40:21 -0400, Nick Sabalausky <a at a.a> wrote:

> "Chad J" <chadjoan at __spam.is.bad__gmail.com> wrote in message
> news:h4oku0$uel$1 at digitalmars.com...
>> Daniel Keep wrote:
>>>
>>> Maybe the compiler could rewrite the above as:
>>>
>>> auto t = a.b;
>>> t.c = 3;
>>> a.b = t;
>>>
>>
>> I'd always suspected C# properties did something like this, though it's
>> been so long since I've used C# now that I'm wondering if it's bad  
>> memory.
>>
>
> Same here, so I just did a little test in Visual C# 2008 Express. Turns  
> out
> that rewriting *is* exactly what C# does.
>
> Code:
> --------------------------------------
> using System;
>
> namespace ConsoleApplication1
> {
>     class Program
>     {
>         class Rect
>         {


Change Rect to a struct, try again.  Classes are reference types (note, I  
don't have a C# compiler handy, so I'm not sure what the result is).

-Steve



More information about the Digitalmars-d mailing list