09/02/28 23:41:24 6cM45uPX
なんとかコンパイルできるようになりました。
初期化関数については、元々上手くいってる選手やボールの初期化関数ではiteratorを使ってませんでした。
ゴール関係初期化関数だけiteratorを何故か使ってしまっていてそれがプログラム実行中のエラーになっていたらしい。
結局>577のエラーメッセージの意味は分からなかったので、先がちょっと不安な感じ。
何故か移動用関数内では、(*it). で要素にアクセスできているので不思議~。
これでやっと>539のバグ取りに戻れる・・・orz
(プログラム実行時エラーになる書き方、詳細は略)
init(){
goallist.clear(); //GoalData型(ゴール関係のデータが入ってるクラス)のリストgoallistの要素を空にする。
list<GoalData>::iterator it; //GoalData型リストgoallistのどれかを指定するためのiteratorを設定
it=goaldata.begin; //iteratorをGoalData型リストgoallistの先頭を指すようにする
(データの数だけループ){
(*it).x1=10; //GoalData型の要素に初期データを代入する
(*it).x2=50;
++it; //iteratorを1つ上げて次のGoalData型の要素を指すようにする。
}
(プログラムが無事実行できた書き方、詳細は略)
init(){
GoalData gd; //GoalData 型データ1個分を仮保存するためのローカル変数gdを定義
(データの数だけループ){
gd.x1=10; //GoalData型の要素に初期データを代入する
gd.x2=50;
goallist.push_back(gd); //gdに仮保存したgoallistの要素一個分のデータをまとめてgoallistの最後尾の要素に登録
}