当前位置:  开发笔记 > 编程语言 > 正文

编译器警告:null引用异常

如何解决《编译器警告:null引用异常》经验,为你挑选了1个好方法。

我在Visual Studio 2005中有以下代码.

    Dim OutFile As System.IO.StreamWriter
    Try
        OutFile = New System.IO.StreamWriter(Filename)
       // Do stuff with OutFile
    Catch Ex As Exception
       // Handle Exception
    Finally
       If OutFile IsNot Nothing Then OutFile.Close()
    End Try

但VS2005提出警告"If OutFile IsNot .."这一行

变量'OutFile'在被赋值之前使用.在运行时可能会导致空引用异常.

有没有办法通过巧妙地改变代码来消除这个警告,或者只是有更好的方法来做我正在尝试做的事情?

谢谢



1> tvanfosson..:
Dim OutFile As System.IO.StreamWriter
OutFile = Nothing
Try
    OutFile = New System.IO.StreamWriter(Filename)
   // Do stuff with OutFile
Catch Ex As Exception
   // Handle Exception
Finally
   If OutFile IsNot Nothing Then OutFile.Close()
End Try

与C#错误类似:使用未分配的局部变量


并不是的.它不是试图阻止空引用,而是意外省略默认值.强制您显式提供默认值以删除警告,这会让您意识到您已将变量放在未定义的位置.
推荐阅读
yzh148448
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有