グリッドの最後に到達したときに、C++ で初期化されていない変数を無視する必要があります。
pointMapIt++;
float nextPointRow;
if (pointMapIt != grid.points.end())
{
nextPointRow = 3.0;
pointMapIt--;
}
if (point.dr != nextPointRow)
//Do stuff
pointMapIt は、グリッド ポイントを通過する反復子です。反復ごとに nextPointRow をチェックします。nextPointRow が設定されていないため、プログラムは最後の繰り返しでクラッシュします。
は実際の有効な入力である0.0
ため、nextPointRow を に設定できません。0.0
実際、nextPointRow がどうなるかはわかりません。したがって、私が本当に必要としているのは、(nextPointRow を初期化して) nextPointRow を NULL に対してチェックできるようにすることです。次のようにします。
if (nextPointRow != null && point.dr != nextPointRow)
これを行うか、問題を完全に回避する方法はありますか?