2009-09-17 41 views
1

我不小心写了一些代码,今天是这样的:为什么我可以将NullablevalueType传递给一个不可为null的值类型?

Private Sub Foo() 
    Dim i as Nullable(Of Integer) 
    Bar(i) 
End Sub 

Private Sub Bar(myInt as Integer) 
    ''//Do Stuff 
End Sub 

我立刻注意到了这个问题,但我已经点击运行按钮。它编译成功,我将它运行到该部分,并引发异常。

你不能在C#中这样做,它给出了一个编译错误“不能从'int?'转换。到'int'“。

是否有一个'Option Explicit'类型的开关,我可以打开以确保这种错误不再发生?

回答

相关问题