Я пытаюсь проверить, есть ли номер std::complex
, являющийся результатом преобразования Фурье (с использованием http://fftw.org/), содержит NaN
в реальной или воображаемой части.Проверка того, содержит ли комплексное число NaN
Я использую Borland C++, поэтому у меня нет доступа к std::isnan
. Я попытался проверить, если число NaN
, сравнивая его с собой:
(n.imag() != n.imag())
Однако, как только я называю n.imag()
или std::imag(n)
, я получаю «плавающую точку недопустимую операцию».
Есть ли способ проверить правильность std::complex
; если он содержит NaN
?
Измените свой компилятор, если он не поддерживает 'std :: isnan'. – Nawaz
Nawaz: Работа над ним. Но это большая база кода, и я должен поддерживать продукт в среднее время. – dagur