我有一个函数嵌套在R中的另一个函数中。由于深层函数有点慢,我决定使用sourceCpp交换一些编译代码。但是,该内部函数使用外部函数中定义的变量。在R我使用环境。什么是c ++模拟?我必须使用extern关键字吗?这样的事情会起作用吗?
#include <Rcpp.h>
using namespace Rcpp;
// [[Rcpp::export]]
arma::mat myFunc(arma::mat a, arma::mat b){
extern arma::mat c;
return a + b + c;
}
答案 0 :(得分:0)
你可以通过Rcpp很好地将R环境传递给C ++;并且示例存在于文档,此处和其他位置。然而,只是在那里随机扔一个C ++ extern
就可以访问一个环境。