FORWARD_NULL在取消清除NULL之后
本文关键字:NULL 清除 之后 取消 FORWARD | 更新日期: 2023-09-27 18:29:11
我有这行代码:
this.Path = pathLookUpLocation.GetValue(RegLookupKey, null).ToString();
当我在代码上运行静态分析工具(Coverity)时,我在这里得到一个FORWARD_NULL,表示我在这里取消引用NULL。我很难理解这意味着什么,以及我将如何解决它?
this.Path是字符串,pathLookUpLocation是RegistryKey,RegLookupKey是字符串。
我假设pathLookUpLocation
属于RegistryKey
类型。
出现此消息的原因是,如果找不到具有RegLookupKey
指定键的值,则代码将抛出NullReferenceException
。之所以会发生这种情况,是因为您将null
作为第二个参数传递给GetValue
。第二个参数是在找不到键时返回的默认值。
将其更改为string.Empty
:进行修复
this.Path = pathLookUpLocation.GetValue(RegLookupKey, string.Empty).ToString();