【发布时间】:2012-09-13 01:22:01
【问题描述】:
在 C# 中,属性的 setter value 关键字将自动与属性的类型相同。
例如,在 C# 中,value 的类型为 string
private string str = string.Empty;
public string MyText
{
get { return str; }
set { str = value; }
}
如果我们将这个 sn-p 转换为 VB.Net,我们得到
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
问题
-
为什么set有
Set(ByVal value As String)这一行?不应该值类型 自动成为字符串。这边。Private str As String = String.Empty Public Property MyText() As String Get Return str End Get Set str = value End Set End Property那有什么用?
我不能把
BYVal改成ByRef(我试过了,报错),那还有什么用呢?
【问题讨论】:
-
问得好,不知道为什么直接给它一个-1。
-
@AlastairPitts:可能是因为标题混乱。