假设我正在构建一个R包,其中包含C文件,这些文件通过R_GetCCallable
从其他R包中调用C代码,例如
void R_init_thispackage(DllInfo *info) {
…
zoo_lag = (SEXP(*)(SEXP,SEXP,SEXP)) R_GetCCallable("zoo","zoo_lag");
}
new_cfile.c
SEXP new_func (SEXP arg1, SEXP arg2, SEXP arg3)
{
SEXP temp = zoo_lag(arg1, arg2, arg3);
...
}
我想通过Rcpp
用C ++调用这些C文件(来自正在构建的包):
当Rcpp
生成文件src/RcppExports.cpp
时,它会自动在其中添加包初始化功能(类似于R_init_thispackage
)。由于我需要在函数内添加一条额外的行,以便从另一个包进行导入,因此我想知道是否有某种方法可以告诉Rcpp
包含该导入,例如通过某些关键字,因此无需在每次重新生成后手动添加。