我使用一些Cpp函数来创建R库,我使用Rcpp.package.skeleton()来实现。在同一个Cpp文件中,我具有更多功能。有没有一种方法可以使我无法使用的功能不可见?
例如,我有:
#include <Rcpp.h>
// [[Rcpp::export]]
int a (int x){
return x+2;
}
// [[Rcpp::export]]
int b(int y){
z=a(y);
return(z);
}
我只想调用“ b”函数。
我使用Rcpp骨架制作包装,如果我执行R CMD检查警告时会告诉我:
Undocumented code objects:'a'
因为我只为函数“ b”做文档。
是否有执行此操作的方法?在RStudio中,当我编写要编写的功能的功能预览时出现,并且我不希望功能“ a”使用它,而只希望功能“ b”使用它]
a()
用作R函数,但希望对最终用户隐藏它,则需要使用以句点开头的名称导出它,因此,请使用[ C0],则键入// [[Rcpp::export]]
。现在,您可以在包的R代码中使用// [[Rcpp::export(.a)]]
作为函数,但对包的最终用户将其隐藏。.a()
现在,在R中,您可以这样做:
#include <Rcpp.h>
// [[Rcpp::export(.a)]]
int a (int x){
return x+2;
}
// [[Rcpp::export]]
int b(int y){
z = a(y);
return(z);
}