を使用してフーリエ変換した結果のstd::complex
に、NaN
が含まれているかどうかを確認しようとしています。複素数がNaNであるかどうかをチェック
私はBorland C++を使用していますので、std::isnan
にアクセスすることはできません。私は数がNaN
であれば自分自身にそれを比較することによって、チェックしようとしています:
(n.imag() != n.imag())
しかし、できるだけ早く私はn.imag()
またはstd::imag(n)
呼んとして、私は「浮動小数点無効操作」を取得します。
std::complex
が有効であるかどうかを確認する方法はありますか。 NaN
が含まれている場合は、
'std :: isnan'をサポートしていない場合は、コンパイラを変更してください。 – Nawaz
Nawaz:それに取り組んでいます。しかし、それは大きなコードベースであり、私はその間に製品を維持しなければならない。 – dagur