2

2点間の距離であるwの値を繰り返し計算したいと思います。私のAclassには、x、ythiswなどのメンバーがいます。だから私はピタゴラスの定理を使用しますが、イテレータを使用してスムーズにそれを行うにはどうすればよいですか?これは私の試みですが、イテレータ参照を使用して「ポイントされたよりも前の」値を参照する方法がわかりません。助けてください :)

Aclass temp;
for (ars::cClassC::iterator it = New_Diff.begin(); it != New_Diff.end(); it++)
            {
            temp.w = sqrt(((it->getX()-(it->getX()-1))^2+((it->getY()-(it->getY()-1)));
            New_Diff.push_back(temp);
            }
4

1 に答える 1

3

前の要素を保存するだけです。

ars::cClassC::iterator it_prev = New_Diff.end();
for (ars::cClassC::iterator it = New_Diff.begin(); it != New_Diff.end(); it++) {
  if (it_prev != New_Diff.end()) {
     //do the stuff here, now you have the two elements
  }
  it_prev = it;
}
于 2012-12-10T13:25:58.287 に答える