RCPP Armadillo:在函数中打印整数值
RCPP Armadillo: Print integer value in function
CPP 和 RCPP 的新手
我正在用 RCPP 组合一个 R 包。
这是我的步骤:
- 转移到带包的目录。
- 运行 compileAttributes(pkgdir = ".",verbose=TRUE)
- 然后 运行 从 devtools 构建和安装。
我希望我的 CPP 函数之一在调用时打印一条消息。
所以我补充说:
Rcpp::Rcout << "Hello World!" << std::endl;
然后我完成了上面的步骤 1 到 3。但是没有雪茄。甚至没有雪茄。
理想情况下,我希望它打印出一个整数值 i,例如
示例代码。
Rcpp::Rcout << i << std::endl;
到目前为止,它编译和函数 运行s - 但没有 dear 变量的打印输出。帮助!下面是我的功能示例。我怀疑有一些标准方法可以将值传递给 R 或简单地从 CPP 打印。
# include <RcppArmadillo.h>
// [[Rcpp::depends(RcppArmadillo)]]
// [[Rcpp::plugins(cpp11)]]
using namespace Rcpp ;
arma::mat sillyme (arma::mat FE) {
arma::mat FEE = FE ;
Rcpp::Rcout << "Hello World!" << std::endl;
Rcpp::Rcout << FE.n_rows << std::endl;
return(FEE) ;
}
在我的系统(Ubuntu 20.04,R 4.0.0)上,这按预期工作(在添加 // [[Rcpp::export]]
属性以确保该函数可从 R 调用之后):
sillyme(diag(2))
# Hello World!
# 2
# [,1] [,2]
# [1,] 1 0
# [2,] 0 1
CPP 和 RCPP 的新手
我正在用 RCPP 组合一个 R 包。
这是我的步骤:
- 转移到带包的目录。
- 运行 compileAttributes(pkgdir = ".",verbose=TRUE)
- 然后 运行 从 devtools 构建和安装。
我希望我的 CPP 函数之一在调用时打印一条消息。 所以我补充说:
Rcpp::Rcout << "Hello World!" << std::endl;
然后我完成了上面的步骤 1 到 3。但是没有雪茄。甚至没有雪茄。
理想情况下,我希望它打印出一个整数值 i,例如
示例代码。
Rcpp::Rcout << i << std::endl;
到目前为止,它编译和函数 运行s - 但没有 dear 变量的打印输出。帮助!下面是我的功能示例。我怀疑有一些标准方法可以将值传递给 R 或简单地从 CPP 打印。
# include <RcppArmadillo.h>
// [[Rcpp::depends(RcppArmadillo)]]
// [[Rcpp::plugins(cpp11)]]
using namespace Rcpp ;
arma::mat sillyme (arma::mat FE) {
arma::mat FEE = FE ;
Rcpp::Rcout << "Hello World!" << std::endl;
Rcpp::Rcout << FE.n_rows << std::endl;
return(FEE) ;
}
在我的系统(Ubuntu 20.04,R 4.0.0)上,这按预期工作(在添加 // [[Rcpp::export]]
属性以确保该函数可从 R 调用之后):
sillyme(diag(2))
# Hello World!
# 2
# [,1] [,2]
# [1,] 1 0
# [2,] 0 1