我想访问接口字典中的元素:
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"功能
摆脱警告的最佳方法是什么?
答案 0 :(得分:3)
摆脱这种情况的最佳方法是为其指定一个值,该值不必是实际对象,它可以只是nothing
这应该有效:
Dim Worker As IWorker = Nothing
希望这有帮助!