ArrayList/Particleシステムに関する非常に基本的なチュートリアルを行っています。私は "コンストラクタが定義されていないエラー"を取得し続け、私は理由を把握することはできません。グーグルでは、より複雑な質問/回答がたくさん出てきます。私は何が欠けていますか?昨年、この変化はありましたか?コンストラクタが定義されていません[処理中]
ArrayList<Particle> plist;
void setup(){
size(640, 360);
plist = new ArrayList<Particle>();
println(plist);
plist.add(new Particle());
}
void draw(){
background(255);
}
class Particle {
PVector location;
PVector velocity;
PVector acceleration;
float lifespan;
Particle(PVector l){
// For demonstration purposes we assign the Particle an initial velocity and constant acceleration.
acceleration = new PVector(0,0.05);
velocity = new PVector(random(-1,1),random(-2,0));
location = l.get();
lifespan = 255;
}
void run(){
update();
display();
}
void update(){
velocity.add(acceleration);
location.add(velocity);
lifespan -= 2.0;
}
void display(){
stroke(0, lifespan);
fill(175, lifespan);
ellipse(location.x, location.y,8,8);
}
boolean isDead(){
if(lifespan < 0.0){
return true;
}else{
return false;
}
}
}
Ahh ok。コンストラクターとクラスは私にとって初めてのものなので、私はそれをやりました。エラーは消えました。私はコンストラクタについての読書をいくつか行います。 –
@mishap_nパラメータに関しては、コンストラクタは非常によく似た関数です。パラメータなしで 'ellipse()'関数を呼び出そうとすると、同様のエラーが発生します。 –