对象在处理中的draw()函数中变为null



我在下面有2个打印语句。第一个打印语句正常工作,但第二个打印量正在返回零值。可能是原因。

预先感谢。

void setup()
{
setSize(800);
GUI g=new GUI();
Println(g); // this prints fine
}
void draw()
{
Println(g); //this becomes null
}

首先,请发布您正在运行的实际代码。println()函数以低写字母开头,因此您发布的代码不会编译。请发布mcve。

其次,请了解范围的工作原理。您在一个函数中创建的变量在其他功能中不可用。因此,您在setup()函数中创建的g变量与draw()函数中的g变量不同!

众所周知,您的问题是由于处理包含一个您不应该搞砸的g变量而引起的。更改变量的名称以避免此问题。当然,这将为您带来编译器错误,因为您正在尝试在其范围之外使用变量。通过声明要在草图顶部的多个功能中使用的变量来解决该问题。

最新更新