Я проверил повысить документы, и я понимаю, что эта ошибка является результатом прохождения 0
в качестве второго аргумента boost::math::cyl_bessel_k
и это делает
return (v == 0) ? policies::raise_overflow_error<T>(function, 0, pol)
: policies::raise_domain_error<T>(
function,
"Got x = %1%, but we need x > 0", x, pol);
если он получит это.
Я на 98% с ++ нуб. Как можно обработать эту ошибку, чтобы предотвратить сбой моей программы?
Ну, очевидный ответ, кажется, не пройти 0, но если это невозможно, и вы в порядке с ошибкой функции, вы можете поймать исключение и обрабатывать это так, как кажется правильным. Программа не потерпит крах.
это руководство может помочь объяснить глубже, что вы должны делать.
Других решений пока нет …