Vb.net 如何使用';与{…}';语法?

Vb.net 如何使用';与{…}';语法?,vb.net,class,constructor,Vb.net,Class,Constructor,在new子new中,我想插入属性的值 例: 一级 2-表格 Dim a As New A With {.Name = "ABCDE"} 'MsgBox Empty 消息框将为空,因为在上述语句中,执行顺序为: 首先调用new,并执行子例程new中的所有语句 然后对with语句中的变量执行初始化步骤 现在,如果要在初始化过程中打印名称,另一种解决方案是: 您可以在属性设置期间打印,如下所示。(当名称设置为值时,可以使用bool变量不进一步打印。) 电话: Dim a1 As Ne

在new子new中,我想插入属性的值

例: 一级

2-表格

    Dim a As New A With {.Name = "ABCDE"}  'MsgBox Empty
消息框将为空,因为在上述语句中,执行顺序为:

  • 首先调用
    new
    ,并执行子例程
    new
    中的所有语句
  • 然后对
    with
    语句中的变量执行初始化步骤
现在,如果要在初始化过程中打印名称,另一种解决方案是:

您可以在属性设置期间打印,如下所示。(当名称设置为值时,可以使用bool变量不进一步打印。)

电话:

 Dim a1 As New A With
            {.Name = "ABCDE"}
消息框将为空,因为在上述语句中,执行顺序为:

  • 首先调用
    new
    ,并执行子例程
    new
    中的所有语句
  • 然后对
    with
    语句中的变量执行初始化步骤
现在,如果要在初始化过程中打印名称,另一种解决方案是:

您可以在属性设置期间打印,如下所示。(当名称设置为值时,可以使用bool变量不进一步打印。)

电话:

 Dim a1 As New A With
            {.Name = "ABCDE"}

当然它是空的,您还没有设置(“插入”?)值
Name=“ziggy”
就可以了。如果要向类传递名称值,请向构造函数(
Sub New
)添加字符串参数并传递值。您不需要使用参数的大括号。很抱歉,我弄错了表单代码并对其进行了修改。请将消息框移出构造函数,将其放置在
Dim a
之后,并显示
a.Name
。构造函数是特殊的,它运行以创建对象<代码>With将在创建对象后指定名称。如果对象为空,则您尚未设置(“插入”?)值
Name=“ziggy”
就可以了。如果要向类传递名称值,请向构造函数(
Sub New
)添加字符串参数并传递值。您不需要使用参数的大括号。很抱歉,我弄错了表单代码并对其进行了修改。请将消息框移出构造函数,将其放置在
Dim a
之后,并显示
a.Name
。构造函数是特殊的,它运行以创建对象<代码>与将在创建对象后分配名称
Public Class A

    'PROPERTY GET AND SET
    Private _name As String
    Public Property Name() As String
        Get
            Return _name
        End Get
        Set(ByVal value As String)
            _name = value
            MsgBox(_name) 'PRINT HERE
        End Set
    End Property

    'NEW SUBROUTINE
    Sub New()

    End Sub

End Class
 Dim a1 As New A With
            {.Name = "ABCDE"}