私はSDLライブラリを使用してプログラムを開発しています。すべてが Linux で行われ、完全に動作しますが、Windows に移植するときに問題が発生します。プログラムをビルドして実行するとクラッシュ (プログラムが動作を停止) して閉じます。最初は SDL と関係があると思いましたが、2 次元配列またはクラスのオブジェクトを定義する行にエラーを分離しました。 . クラス プロトタイプは、次のようにヘッダー ファイルで定義されます。
#ifndef PARTICULA_H
#define PARTICULA_H
class particula {
public:
particula();
particula(const particula& orig);
virtual ~particula();
int x,y;
int vx,vy;
int tipo;
int tipo2;
int peso;
int empuje;
bool update;
bool update_temp;
int contador;
int temperatura;
};
#endif
現在、その .cpp ファイルで定義されているクラス コンストラクター
particula::particula() {
vx = 0; vy = 0; tipo = 0; peso = 0; empuje = 0;
update = true; contador = 0; temperatura = 0;
update_temp = true; tipo2 = 0;
}
particula::particula(const particula& orig) {
}
particula::~particula() {
}
さて、main() 関数では、最初に、このクラスの配列を定義します。
particula matriz[400][220];
ビルドして実行するとプログラムがクラッシュしますが、その行をコメントしてもプログラムはクラッシュしません。それ以外のことはできません。それを見つけるために関数全体にコメントを付けたmain
ので、その行だけが実行されます。どうなり得るか?私は何か間違ったことをしていますか?