2

在 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;
}

我不确定它是否是设计使然,或者我只是不知道这样做的正确方法..请启发我!

在此先感谢,艾坦。

4

2 回答 2

4
于 2012-11-04T11:06:56.167 回答
1

据我所知,没有 C# 等价物。return但是,它只是 VB 中的糖语法,因为在幕后,函数名称无论如何都会被行为替换。

使用函数名作为返回参数的可读性值得商榷。大多数人不喜欢它。

return还提供了函数名称所没有的优势,在特定位置解析方法。

于 2012-11-04T11:03:26.110 回答