ホーム » 2016 » 4月 » 07

日別アーカイブ: 2016/04/07

2016年4月
 12
3456789
10111213141516
17181920212223
24252627282930

カテゴリー

アーカイブ

ブログ統計情報

  • 95,597 アクセス


VC 6 Release inline

次の様な呼出しで,Release ビルドでうまく動作しないことがあった.
…\PntFnc\TCrossL\TCrossLD.cpp 2 円の交点のエラー時の動作
  Vd2 cp1 = ::get_point_on_line (l1c,l2c,l1r) ;
デバッグ版では意図した動作となる.
inline Vd2 get_point_on_line ( const Vd2& ls, const Vd2& le, const double d )
{
   if (ls == le) { return ls ; }
   Vd2 unit = (le-ls).Normalized() ;
   Vd2 pos = ls + unit * d ;
   return pos ;
   }
ls と le を比較している部分で抜けてしまっている?
VC 7 では OK.


よくわからないので,間接的に呼出す様に変更.
inline Vd2 get_point_on_line(const Vd2& ls,const Vd2& le,const double d) { return get_point_on_line_(ls,le,d); }

Is this 投稿 useful? Useful Useless 0 of 0 people say this 投稿 is useful.