Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vb.net/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
VB.net自动属性-只读?_Vb.net_Properties - Fatal编程技术网

VB.net自动属性-只读?

VB.net自动属性-只读?,vb.net,properties,Vb.net,Properties,是否可能(以及如何)在VB2010中创建只读自动属性 Public Class Foo Public Property Value As Integer Public Sub New() _Value = 123 End Sub End Class 问题是用户可以写入该属性。 thanx不,VB.Net不支持只读自动属性。参见本期,了解其背后的原因(特别是Jonathan Aneja的评论)。否。您必须创建一个明确的支持字段。thinkthing 您


是否可能(以及如何)在VB2010中创建只读自动属性

Public Class Foo  
  Public Property Value As Integer  
  Public Sub New()  
      _Value = 123
  End Sub  
End Class  
问题是用户可以写入该属性。
thanx不,VB.Net不支持只读自动属性。参见本期,了解其背后的原因(特别是Jonathan Aneja的评论)。

否。您必须创建一个明确的支持字段。

thinkthing

您可以创建代码段来添加泛型属性

请注意,VisualStudio已经改变了使用get set构建属性的基本方式,现在理解get set只需要一行。如果您确实需要内置逻辑,则可以构建完整的getter和setter。我在这里向你介绍:

在这里,关于类似讨论的SO讨论:

VB14(Visual Studio 2015及更高版本)现在支持它:


在早期版本中,您需要创建一个支持字段。

我不明白您的问题是什么。我猜您希望只允许读取值,而不允许写入值。
Public Class Foo  
    Public ReadOnly Property Value As Integer = 123
End Class