为什么我可以将Nullable值类型传递给不可为null的值类型?

时间:2009-09-17 17:40:41

标签: vb.net

我今天意外地编写了一些类似的代码:

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”类型开关,我可以打开以确保不再发生此类错误?

1 个答案:

答案 0 :(得分:4)