En C#, la palabra clave setter value
de una propiedad será automáticamente igual que el tipo de propiedad.¿Por qué el setter de una propiedad VB.NET requiere un argumento escrito y por qué es ByVal?
Por ejemplo, en C#, tipo de value
es string
private string str = string.Empty;
public string MyText
{
get { return str; }
set { str = value; }
}
Si convertimos este fragmento a VB.Net obtenemos
Private str As String = String.Empty
Public Property MyText() As String
Get
Return str
End Get
Set(ByVal value As String)
str = value
End Set
End Property
Preguntas
¿Por qué el conjunto tiene esta lin? e
Set(ByVal value As String)
? El valor tipo no debe ser automáticamente Cadena. De esta manera.Private str As String = String.Empty Public Property MyText() As String Get Return str End Get Set str = value End Set End Property
¿De qué sirve eso?
No puedo cambiar
BYVal
aByRef
(lo intenté, me da error), entonces ¿para qué sirve eso también?
Buena pregunta, no estoy seguro de por qué recibió un -1 directamente. –
@AlastairPitts: Probablemente por el título confuso. –