2

我想创建一个对象的实例并执行该对象的一个​​方法,但不执行将该实例存储在已声明变量中的额外步骤。

例如,假设我有一个简单的 Adder 类:

public class Adder
{
    private int m_int1;
    private int m_int2;
    public Adder(int int1, int int2)
    {
        this.m_int1 = int1;
        this.m_int2 = int2;
    }
    public int getSum()
    {
        return m_int1 + m_int2;
    }
}

我当然可以创建一个实例,存储在一个变量中,然后使用它:

Adder a = new Adder(1, 2);
int rslt = a.getSum();
// rslt = 3

但是,在 C# 中,我可以跳过变量存储步骤,只需在实例化的结果上调用该方法:

int rslt = new Adder(1, 2).getSum();
// rslt = 3

然而,我似乎不能在 VB.NET 中做同样的事情。像这样的声明:

New Adder(1, 2)

除非结果存储在变量中,否则被视为语法错误。

解决方法是在类中创建一个静态“创建”方法,该方法返回该类的新实例,但我想知道是否存在与 C# 中可能的等效的 VB.NET。

4

1 回答 1

9

尝试这个:

Dim rslt As Integer = New Adder(1, 2).getSum()
于 2013-10-10T17:19:04.700 回答