klocwork:Suspicious 在空检查之前取消引用对象引用 'dt'
klocwork:Suspicious dereference of object reference 'dt' before null check
我在“Klocwork”代码分析中遇到 Suspicious dereference of object reference 'dt' before null check
错误。有什么解决办法?谢谢!
using (DataTable dt = new DataTable())
{
dt.TableName = "Hello";
dt.Columns.Add("HEllo1", typeof(string));
if (dt != null)
{
}
return dt;
}
在下一行出现错误,
if (dt != null)
行
if (dt != null)
显然,检查 dt 是否为空。由此,您的分析器假定此时 dt 可能为空。但是,在此之前,您有以下行:
dt.Columns.Add("HEllo1", typeof(string));
如果 dt 为空,将产生 NullReferenceException。
这就是为什么你的分析器警告你这里有问题:它要么是 dt 不能为 null,因此 null 检查是多余的,要么你的代码可能会突然抛出 NullReferenceException,你应该添加更多的 null 检查。
我在“Klocwork”代码分析中遇到 Suspicious dereference of object reference 'dt' before null check
错误。有什么解决办法?谢谢!
using (DataTable dt = new DataTable())
{
dt.TableName = "Hello";
dt.Columns.Add("HEllo1", typeof(string));
if (dt != null)
{
}
return dt;
}
在下一行出现错误,
if (dt != null)
行
if (dt != null)
显然,检查 dt 是否为空。由此,您的分析器假定此时 dt 可能为空。但是,在此之前,您有以下行:
dt.Columns.Add("HEllo1", typeof(string));
如果 dt 为空,将产生 NullReferenceException。 这就是为什么你的分析器警告你这里有问题:它要么是 dt 不能为 null,因此 null 检查是多余的,要么你的代码可能会突然抛出 NullReferenceException,你应该添加更多的 null 检查。