Rcpp没有呼叫abs的匹配功能

Rcpp没有呼叫abs的匹配功能,r,rcpp,R,Rcpp,使用Rcpp时,我想使用函数abs,我只写了Rcpp::abs(-1),但总是出错: 没有与abs调用匹配的函数 实际上,当我编写Rcpp:ab时,有一些提示表明存在Rcpp::abs()。我试过其他一些函数,它可以工作。我知道我可以使用std::abs(-1),我只是想知道为什么Rcpp::abs(-1)不工作,我的系统是windows,我安装了Rtools。需要一个Rcpp对象,例如*Vector和*Matrix 不幸的是,-1属于基本类型,例如,不是Rcpp对象 因此,以下方法可行: #i

使用Rcpp时,我想使用函数
abs
,我只写了
Rcpp::abs(-1)
,但总是出错:

没有与abs调用匹配的函数

实际上,当我编写
Rcpp:ab
时,有一些提示表明存在
Rcpp::abs()
。我试过其他一些函数,它可以工作。我知道我可以使用
std::abs(-1)
,我只是想知道为什么
Rcpp::abs(-1)
不工作,我的系统是windows,我安装了Rtools。

需要一个Rcpp对象,例如
*Vector
*Matrix

不幸的是,
-1
属于基本类型,例如,不是Rcpp对象

因此,以下方法可行:

#include <Rcpp.h>
// [[Rcpp::export]]
void show_rcpp_abs() {
    Rcpp::NumericVector A = NumericVector::create(-1);
    Rcpp::Rcout << "A" << Rcpp::abs(A) << std::endl;

    double B = std::abs(-1.0);
    Rcpp::Rcout << "B" << B << std::endl;
}
#包括
//[[Rcpp::导出]]
无效显示\u rcpp\u abs(){
Rcpp::NumericVector A=NumericVector::create(-1);
Rcpp::Rcout