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

例如,假设我有一个简单的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)


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

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

最佳答案

尝试这个:

Dim rslt As Integer = New Adder(1, 2).getSum()

10-07 20:10