double
の値の差の絶対値を計算し、double
の結果が必要です。代わりに、私はint
を取得しています。intの代わりにabs(double)をdoubleにする
#include <typeinfo>
// ...
printf(
"a:%s b:%s delta:%s abs:%s\n",
typeid(a).name(),
typeid(b).name(),
typeid(a - b).name(),
typeid(abs(a - b)).name()
);
// Prints: a:d b:d delta:d abs:i
減算の結果がすでに二重のであれば、なぜabs
double abs (double x);
署名を使用していませんか?実際には、どのようにして整数を返すことができますか?最も重要なことは、どのようにしてdouble
を返すのですか?
それが違いを作る場合は、a
とb
は実際にmyData.m_lat
とotherData.latitude()
です。
あなたが呼んでいる「abs」機能を知る方法はありません。 [mcve]が役に立ちます。 – juanchopanza