如何处理“函数boost :: math :: cyl_bessel_k <d>(d,d)中的错误:数字溢出”</d>

时间:2013-08-19 01:07:18

标签: c++ math boost error-handling bessel-functions

我已经检查了boost docs,我知道这个错误是将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%c ++ noob。如何处理此错误以防止我的程序崩溃?

1 个答案:

答案 0 :(得分:2)

嗯,显而易见的答案似乎是没有通过0,但如果这不可行,并且您对该功能失败感到满意,您可以捕获异常并以一种方式处理它似乎是对的。那个程序不会崩溃。

tutorial可能有助于更深入地解释您应该做些什么。