相当于(VB6)IsMissing在C#中?

时间:2016-04-06 02:16:33

标签: c# vb6 vb6-migration

这是我在VB6中得到的描述:

enter image description here

如何在c#中执行此操作?

P.S。我也不知道如何在c#中使用可选参数。

1 个答案:

答案 0 :(得分:7)

据我所知,没有完全等效。

public void DoSomething(SomeClass A = null) 
{

}

以下内容之间的C#没有区别:

DoSomething(null);
DoSomething();

您最接近的是对A的空检查。对于值类型,您可以检查默认值(虽然VB6 IsMissing不支持'简单数据类型')。

即翻译版本:

Sub DoSomething(Optional A As SomeClass)
    If IsMissing(A) Then
        'Missing
    Else
        'Not missing
End Sub

时:

public void DoSomething(SomeClass A = null) 
{
    if (A == null)
    {
        //Missing
    } else {
        //Not missing
    } 
}