我正在将VB代码转换为c#:
Private Function SoundsLike(ByVal pWord As String,
Optional ByRef pAccuracy As Byte = 6) As String.
但我得到了不同类型的参数。让我知道如何用C#编写。
答案 0 :(得分:5)
VB.Net
Private Function SoundsLike(ByVal pWord As String, Optional ByRef pAccuracy As Byte = 6) As String
C#
private string SoundsLike(string pWord, byte pAccuracy = 6)
{
}
private string SoundsLike(string pWord, out byte pAccuracy)
{
}
请注意,out
和ref
无法使用默认值
FYI:“out关键字导致参数通过引用传递。这类似于ref关键字,除了ref要求在传递之前初始化变量。” 参考:http://geekswithblogs.net/ftom/archive/2008/09/10/c-and-the-difference-between-out-and-ref.aspx
答案 1 :(得分:3)
代码如下:
private string SoundsLike(string pWord, byte pAccuracy = 6);
需要C#4.0,因为它包含可选参数。对于早期版本,可以通过重载实现相同的目的。
答案 2 :(得分:1)
使用
private string SoundsLike(string pWord, byte pAccuracy = 6)
或者只是
private string SoundsLike(string pWord, out byte pAccuracy)
Private
是可选的。如果没有给出修饰符,则默认为Private
void abc(){}
与
相同private void abc() {}
与变量相同。