我是Rcpp中错误处理的新手。我想知道如何防止错误消息显示在R控制台中?
举个例子,
在rcpp文件中:
#include <RcppArmadillo.h>
using namespace arma;
// [[Rcpp::export]]
void chol_c(mat M) {
try {
mat S = (chol(M)).t();
Rcpp::Rcout << S << std::endl;
} catch(...) {
Rcpp::Rcout << "things wrong " << std::endl;
}
}
在R中:
> mt0=matrix(c(0.5416, -0.0668 , -0.1538, -0.2435,
+ -0.0668 , 0.9836 , -0.0135 , -0.0195,
+ -0.1538 , -0.0135 , 0.0226 , 0.0334,
+ -0.2435, -0.0195 , 0.0334 , 0.0487),4,byrow = T)
> chol_c(mt0)
error: chol(): decomposition failed
things wrong
我的问题是如何阻止出现“错误:chol():分解失败”?
很抱歉,如果解决方案很明显。谢谢!