在我的索引属性中,我检查索引是否超出范围。如果是的话,我抛出一个IndexOutOfBoundsException
.
当我运行代码分析器(在 VS12 中)时,它抱怨 CA1065:意外位置出现意外异常。
参考CA1065的描述,仅
System.InvalidOperationException
System.NotSupportedException
System.ArgumentException
KeyNotFoundException
允许在索引 getter 中使用。
投掷IndexOutOfBoundsException
对我来说似乎很自然,那么这里的推理是什么?
(是的,我知道我可以关闭警告,我只是想知道原因)
很多类都使用ArgumentOutOfRangeException
为此,包括List<T> http://msdn.microsoft.com/en-us/library/0ebtbkkc。这是一个子类ArgumentException
所以应该满足规则。我想你可能会争辩说,对于直接访问的向量等,实际上没有方法调用(它是专用的操作码 -ldelem*
),所以这种情况下的索引不是actually一个论点。不过,这似乎是一个无力的论据。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)