[英]Check for null inside null-coalescing operator
我使用的是Resharper,通常情况下,这些东西会向我强调一些可能引发空引用异常的代码。 但是在这种情况下,Resharper似乎认为代码很好。 为什么?
public static bool Check<T>(IEnumerable<T> docs)
{
var list = docs as IList<T> ?? docs.ToList();
return list.Count == 3;
}
Resharper在这里没有向我强调任何内容。 我在这里想念什么? 如果docs为null,则应该有一个例外。 在此先感谢大家。
我认为ReSharper检查NullReferenceExceptions,但是IEnumerable.ToList()抛出ArgumentNullException 。
这说得通。 您可能会传入一个实现ReSharper可能不知道的空模式的对象,这可能导致错误和烦人的警告,因此我认为这在ReSharper中很难实现
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.