私は今、私は2つの数字、V =(5.41、4)から= 4 1 VY、= 4別min.yを比較したい本当のステートメントはなぜ偽ですか?
struct vector2raw {
real_t x, y;
};
struct vector2 : public vector2raw {
vector2() { null(); }
vector2(real_t x, real_t y) { this->x = x; this->y = y; }
vector2(const vector2 &v) { x = v.x; y = v.y; }
and so on
を "生ベクター" から継承したクラス、ベクトルを持っていますfrom min =(4,4)。これは、2つの等しい数を比較すると奇妙なケースに過ぎず、他のケースは正しく実行されます。私は常に偽になる(4> = 4)(v.y> = min.y)。何が問題なの?
real_tは UPDを倍増するために定義されています。これはどうやらあなたは==
で浮動小数点数を比較している(あなたが再現可能な例を挙げていない)C++
プログラミング言語は、のように – JJJ
@JJJてSetPrecisionと、C++ languge –
トライデバッグに役立つだろう言及:http://stackoverflow.com/a/6722297/2266462 – vovkasm