在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他们确实做到了,但是还做了其他事情。