バウンシング バブル処理の例を (OpenFrameworks を使用して) C++に移植しようとしていますが、少し問題が発生しました。クラスの定義:
class Ball {
float x, y;
float diameter;
float vx = 0;
float vy = 0;
int id;
Ball[] others;
...
void collide() {
for (int i = id + 1; i < numBalls; i++) {
float dx = others[i].x - x;
float dy = others[i].y - y;
float distance = sqrt(dx*dx + dy*dy);
...
オブジェクト「others」が独自のクラス内で宣言されているようです。C++ クラスに追加しようとしまし Ball others(<arguments>);
たが、XCode が怒ってフラッシュし、将来の子供を食べると脅迫するコンソール メッセージを残すので、何か間違ったことをしているに違いありません。これは Java/Processing の問題かもしれないと考えていますが、C++ クラスは初めてです。
C ++で同じことを達成する方法はありますか、それとも、衝突関数をクラスから移動して、いくつかの変更を加えてtestAppクラスに移動したほうがよいですか?