IsNull()是否防止对null对象的引用?

Fre*_*abe 1 powerbuilder

在我的PowerBuilder应用程序中,以下代码段在运行时导致R0002错误(正在引用空对象):

Window w = windows[idx]
IF NOT IsNull( w ) THEN
    MessageBox( "", "ClassName is " + w.GetClassName() ) // This line crashes
END IF
Run Code Online (Sandbox Code Playgroud)

有谁知道那是为什么?我的印象是IsNull()专门用于测试空值.

Ber*_* Dy 5

我认为这些是不同种类的NULL.一个是值为NULL的变量另一个是不存在或尚未实例化的对象.

在第二种情况下,您可能希望使用isValid().