Structure

时间:2015-08-24 10:00:55

标签: vb.net visual-studio-2015

this question开始使用Visual Studio 2015中的不同Visual Basic版本,我正在运行Visual Basic 14中的新语言功能,如文档here和{{3} }。

其中之一就是能够在结构中使用无参数构造函数,如下所示:

Structure MyStruct1
   Public f As Integer
   Sub New()
      f = 15
   End Sub
End Structure

当我在Visual Studio 2015中的代码中尝试此操作时,我仍然在New()下面出现红色错误:

  

BC30629结构不能声明没有参数的非共享'Sub New'。

我还没有看到任何声明在发布之前被拉掉的地方。

我是否误解了这项新功能的用途?

1 个答案:

答案 0 :(得分:0)

您需要对VB.Net中的参数少构造方法使用共享关键字(充当静态关键字)。

尝试以下代码:

Structure MyStruct1
   Public Shared f As Integer
   Shared Sub New()
      f = 15
   End Sub
End Structure
Class My_Class
    Public Shared Sub Main()
        Dim str1 As New MyStruct1()
    End Sub
End Class

注意:Shared关键字在这里充当静态关键字。使用Shared Constructor时,您需要访问Shared变量,这就是为什么我用Shared关键字声明了变量。