我在下面有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
变量而引起的。更改变量的名称以避免此问题。当然,这将为您带来编译器错误,因为您正在尝试在其范围之外使用变量。通过声明要在草图顶部的多个功能中使用的变量来解决该问题。