【发布时间】:2018-11-25 18:00:50
【问题描述】:
PVector m3()
{
return null;
}
(是的,这就是整个程序)给了
Error on "PVector"
为什么?在我看来它是合法的。
同样的失败发生在不同的处理特定类型上,例如颜色但不是原生类型,例如浮动。
解决方法:
【问题讨论】:
-
您确定文件开头没有不可见的字符,例如 BOM?
标签: processing
PVector m3()
{
return null;
}
(是的,这就是整个程序)给了
Error on "PVector"
为什么?在我看来它是合法的。
同样的失败发生在不同的处理特定类型上,例如颜色但不是原生类型,例如浮动。
解决方法:
【问题讨论】:
标签: processing
这是因为PVector 是一个类,而不是一个方法。我想如果你想成为return null,你必须在前面加上void。
void PVector m3() {
return null;
}
除非您想创建一个PVector,否则您只需像创建一个新对象一样键入它。以下是一些示例:
PVector m3 = null;
PVector m1 = new PVector();
PVector m2 = new PVector(2, 3);
有关如何使用PVector的更多信息,我建议您查看官方Processing网站上发布的信息。这是链接:https://processing.org/reference/PVector.html
我希望这能回答你的问题,祝你好运!
【讨论】:
处理工作有两种模式:
静态模式只是一堆函数调用。在这种模式下,Processing 只绘制一个图像然后停止。这是一个例子:
background(32);
ellipse(10, 20, 50, 50);
主动模式是一个包含setup()和draw()等函数的草图。在这种模式下,Processing 在程序启动后继续执行代码:例如每秒执行draw() 60 次,或者当用户按下鼠标时执行mousePressed()。这是一个例子:
void draw(){
background(32);
ellipse(mouseX, mouseY, 25, 25);
}
您的草图的问题是处理不知道您尝试使用哪种模式。它发现您没有 setup() 或 draw() 函数(或任何其他处理回调函数),因此它认为您正在尝试使用静态模式。但是它看到你定义了一个非回调函数,所以它不知道如何工作。
正如您所发现的,您的问题的解决方案是添加其他函数,以便 Processing 可以知道您想要处于哪种模式。另外请注意,您的代码本身没有任何意义,因为 Processing 具有没有办法访问它。我的猜测是您计划最终添加 setup() 和 draw() 函数,所以现在添加它们以消除您的错误。
更多信息:
【讨论】: