Nor*_*ert 3 .net c# resharper ienumerator nullreferenceexception
ReSharper通知我有关System.NullReferenceException以下代码的可能性:
IEnumerator<IEdgeData> edgeEnumerator = edgeData.GetEnumerator();
while (edgeEnumerator.MoveNext())
{
ConvId fromConvId = edgeEnumerator.Current.From;
...
}
Run Code Online (Sandbox Code Playgroud)
具体来说,它强调:
edgeEnumerator.Current
Run Code Online (Sandbox Code Playgroud)
我无法弄清楚异常可能发生在哪种情况下.我的理解是,while只有MoveNext()在下一个元素上设置枚举器时才会执行-loops内部语句.
下一个元素实际上可以为null.例如,以下代码:
new List<SampleClass> { null, null, null }
Run Code Online (Sandbox Code Playgroud)
仍会为每个元素提供一个枚举器,但元素本身为null.
| 归档时间: |
|
| 查看次数: |
692 次 |
| 最近记录: |