Re: Wert kann nicht als Ziel einer Aufgabe verwendet werden

From: Herfried K. Wagner [MVP] (hirf-spam-me-here_at_gmx.at)
Date: 12/02/04


Date: Thu, 2 Dec 2004 08:47:40 +0100

Hallo Karsten!

"Karsten Sosna" <k.sosna-NOSPAM@t-online.de> schrieb
>> Da 'Rectangle' ein Werttyp ist, gibt 'eArgs.ClipRectangle.X' einen /Wert/
>> zurück. Eine Zuweisung direkte würde daher nichts am eigentlichen
>> 'Rectangle' ändern.
>
> Unterschreibe ich nicht:

Ich schon!

> \\\
> Dim r As New Rectangle(0, 0, 100, 100)
> Console.Write(r)
> r.X = 50
> r.Width = 200
> Console.Write(r)
> ///
> Wo ändert hier die Zuweisung an .X oder .Width nichts am Rectangle.

In diesem Fall handelt es sich bei 'r' auch nicht um eine Eigenschaft.

\\\
Dim f As New Foo
f.Goo.X = 100 ' Gleicher Fehler.
.
.
.
Public Class Foo
    Public Property Goo() As Rectangle
    Get
        ...
    End Get
    Set(ByVal Value As Rectangle)
        ...
    End Set
    End Property
End Class
///

> Das Argument ist ein Wert und kann nicht als Ziel einer Zuweisung sein.
> Hallo??? was soll das den? (Obiges Beispiel funktioniert doch).

Das sagt genau das, was ich in meinem Beitrag gesagt habe. 'Goo' gibt eine
/Kopie/ (Wert) zurück, eine Zuweisung ist da sinnfrei.

-- 
 M S   Herfried K. Wagner
M V P  <URL:http://dotnet.mvps.org/>
 V B   <URL:http://dotnet.mvps.org/dotnet/faqs/> 


Relevant Pages