Änderungen an Eigenschaftenprozeduren für Visual Basic 6.0-Benutzer
Aktualisiert: November 2007
In Visual Basic 2008 wurde die Deklaration von Eigenschaftenprozeduren und -parametern aktualisiert. Dies führt zu einer Vereinfachung und gewährleistet Interoperabilität mit anderen Programmiersprachen.
Visual Basic 6.0
In Visual Basic 6.0 werden Eigenschaftenwerte mit der Anweisungen Property Get, Property Let und Property Set abgerufen bzw. festgelegt.
Sie können einen Eigenschaftenparameter als ByRef deklarieren. Wenn eine Variable an einen solchen Parameter übergeben wird, hat eine Prozedur die Möglichkeit, diese Variable im Aufrufcode zu ändern.
Visual Basic 2008
In Visual Basic 2008 wird eine vereinheitlichte Deklarationssyntax eingeführt, die Prozeduren zum Abrufen und Festlegen von Eigenschaftenwerten umfasst. Dies gewährleistet die Konsistenz von Eigenschaftenattributen, wie Zugriffsebene und Überladung. Im folgenden Beispiel wird die Deklaration einer Eigenschaft veranschaulicht, die keine Parameter akzeptiert:
Private monthNum As Integer = 1
Property month() As Integer
Get
Return monthNum
End Get
Set(ByVal Value As Integer)
If Value < 1 Or Value > 12 Then
' Error processing for invalid value.
Else
monthNum = Value
End If
End Set
End Property
Sie können jeden gewünschten Namen für den Parameter für Set verwenden. Wenn Sie kein Argument angeben, wird Value automatisch generiert.
Durch diese Syntaxänderung sind die Property Get-Anweisung und die Property Set-Anweisung überflüssig; sie werden daher nicht unterstützt. In Visual Basic 2008 sind Standardeigenschaften ohne Parameter nicht zulässig. Die Property Let-Anweisung und die Property Set-Anweisung werden daher nicht mehr benötigt, um festzustellen, ob ein Objektverweis oder eine Standardeigenschaft zugewiesen werden soll. Aus diesem Grund wird die Property Let-Anweisung ebenfalls nicht unterstützt.
Visual Basic 2008 unterstützt keine ByRef-Eigenschaftenparameter. Wenn eine Eigenschaftenprozedur über einen ByRef-Parameter verfügt und die dem zugehörigen Argument unterliegende Variable geändert wird, kann die Eigenschaft ein unerwartetes Verhalten zeigen. Aus diesem Grund muss in allen Deklarationen parametrisierter Eigenschaften ByVal für die Parameter angegeben werden.
Siehe auch
Konzepte
Änderungen von Standardeigenschaften für Visual Basic 6.0-Benutzer
Änderungen an der Unterstützung von Programmierelementen (Zusammenfassung)