如何在 Rcpp 代码中返回 R 的 NULL? [英] How to return R's NULL in Rcpp code?

查看:63
本文介绍了如何在 Rcpp 代码中返回 R 的 NULL?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

假设我有一个用 Rcpp 编译的 C++ 代码,并将在 R 中调用.

Suppose I have a C++ code to compile with Rcpp and will be called in R.

// [[Rcpp::export]]
SEXP to_env(List x) {
  if(x.hasAttribute("names"))
  {
    return x;
  }
  else
  {
    return NULL;
  }
}

NULL 值应该是什么来返回 R 的 NULL 而不是崩溃?

What should the NULL value be to return R's NULL instead of a crash?

推荐答案

使用此代码:

return R_NilValue;

同样适用于 C++ 和 C 代码;它是 R C API 的一部分.

The same goes for C++ as well as C code; it's part of the R C API.

这篇关于如何在 Rcpp 代码中返回 R 的 NULL?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆