访问接口ByRef时如何避免警告

时间:2017-06-08 13:07:23

标签: vb.net

我想访问接口字典中的元素:

Public Interface IWorker
    Sub doSomething()
End Interface

Private Sub Test()

    Dim MyDict As New Dictionary(Of Integer, IWorker)()
    Dim Worker As IWorker

    If MyDict.TryGetValue(0, Worker) Then
        Worker.doSomething()
    End If

End Sub

它有效,但我收到警告:"变量'工人'在被分配值"

之前使用

我发现了这个问题:VB.NET: Null reference with an Interface但是对于解决方案,我必须更改" TryGetValue"功能

摆脱警告的最佳方法是什么?

1 个答案:

答案 0 :(得分:3)

摆脱这种情况的最佳方法是为其指定一个值,该值不必是实际对象,它可以只是nothing

这应该有效:

Dim Worker As IWorker = Nothing

希望这有帮助!