在vb.net中,您可以使用函数名称作为结果变量。

例:

Function Foo(ByVal bar As Integer) As List(Of Integer)
    Foo = New List(Of Integer)
    Foo.Add(bar + 1)
End Function


据我所知,在C#中,您必须:

List<int> foo(int bar)
{
     var result = new List<int>();
     result.Add(bar + 1);
     return result;
}


我不确定这是设计使然,还是我不知道正确的方法。
请赐教!

提前致谢,
爱丹

最佳答案

C#不支持。从历史上看,VB支持此功能的唯一原因是以前的(.NET之前)版本仅使用函数名称分配-即,没有Return语句.1

.NET开发人员之间普遍达成共识,即使在VB中也应使用Return …方法,而不要使用FunctionName = …Exit Function



1他们确实做到了,但是还做了其他事情。

10-02 01:20
查看更多