在用我反转矩阵时,boost::ublas
有时会在日志中出现此错误:
在第 298 行的文件 /usr/include/boost/numeric/ublas/lu.hpp 中检查失败:detail::expression_type_check (prod (triangular_adaptor (m), e), cm2)
我知道这通常是有用的信息,但对我来说不是。有没有办法抑制该消息(以某种方式配置提升或使用编译器标志)?BOOST_UBLAS_NDEBUG
不削减它。
在用我反转矩阵时,boost::ublas
有时会在日志中出现此错误:
在第 298 行的文件 /usr/include/boost/numeric/ublas/lu.hpp 中检查失败:detail::expression_type_check (prod (triangular_adaptor (m), e), cm2)
我知道这通常是有用的信息,但对我来说不是。有没有办法抑制该消息(以某种方式配置提升或使用编译器标志)?BOOST_UBLAS_NDEBUG
不削减它。
查看该标题会发现:
#if BOOST_UBLAS_TYPE_CHECK
BOOST_UBLAS_CHECK (detail::expression_type_check (prod (triangular_adaptor<const_matrix_type, upper> (m), e), cm2), internal_logic ());
#endif
它甚至被记录在案:
BOOST_UBLAS_TYPE_CHECK
当 BOOST_UBLAS_TYPE_CHECK 被启用时,所有可能昂贵的结构检查都被启用。如果这是不可取的,则
#define BOOST_UBLAS_TYPE_CHECK 0
在包含任何 uBLAS 标头之前使用。定义 BOOST_UBLAS_TYPE_CHECK_EPSILON 可用于控制可接受的容差,请参阅detail/matrix_assign.hpp
此检查的实现细节。