使用.Call()将s4对象发送到C结构

朗道

我想将一个简单的s4对象传递给C并将其转换为一个简单的结构。我在想像R代码

setClass("MyClass", slots = list(x = "numeric", y = "integer"))
r_instance = new("MyClass", x = rnorm(5), y = as.integer(1:10))
dyn.load("parse.so")
.Call("parse", r_instance)

parse.c

#include <R.h>
#include <Rinternals.h>
#include <Rmath.h>

typedef struct {
  double x;
  int y;
} MyStruct;

SEXP parse(SEXP r_instance){
  MyStruct c_instance = MAKE_S4_INTO_STRUCT(r_instance);
  printf("%g %d\n", c_instance->x[0], c_instance->y[0]);
  return R_NilValue;
}

是否有MAKE_S4_INTO_STRUCT可以使之工作功能?Hadley的C接口页面R扩展手册中没有找到答案

德克·埃德比布特尔(Dirk Eddelbuettel)

可悲的是,“我希望有一个小马”的方法并不总是有效。

但是,通过从Rcpp创建as<>()wrap()转换程序,您可以构建自己的此类功能。请在此处此处查看现有的S4转换器示例以获取启发。

简而言之,您struct的R类型或Rcpp类型都不存在,因此您必须提供映射。一旦您做完,事情就会变得很麻烦,因为您添加的转换器将被称为“按需”。

就是说,编写此类转换器可能不是您在使用Rcpp的第一天就应该做的...

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

使用angularjs将多个对象发送到webapi

来自分类Dev

使用信号将字典对象发送到线程类

来自分类Dev

是否可以使用Kafka将Java对象发送到C#App

来自分类Dev

使用C将BMP图像发送到串口

来自分类Dev

使用JavaScript将“%”发送到API

来自分类Dev

如何使用Paho C客户端将数据作为JSON对象发送到MQTT代理

来自分类Dev

使用类函数更改S4对象的“类”时会发生什么情况?

来自分类Dev

如何在Android中使用Volley将JSON对象发送到服务器

来自分类Dev

如何使用Javascript XMLHttpRequest将JSON数据对象发送到服务器?

来自分类Dev

如何使用ExecuteApplicationPipeline准备器将非字符串对象发送到管道中

来自分类Dev

使用cURL将imagepng()对象发送到服务器

来自分类Dev

使用jQuery将JSON对象发送到MVC 6 WebApi控制器

来自分类Dev

使用AJAX将JSON对象发送到服务器

来自分类Dev

使用FormData对象将数据发送到AJAX中的控制器

来自分类Dev

使用 Python 将 JSON 对象发送到 tcp 侦听器端口

来自分类Dev

使用 AsyncTask 和 POST 方法将变量发送到服务器并取回 JSON 对象

来自分类Dev

使用 Axios 将 Blob 发送到服务器,接收空对象

来自分类Dev

如何使用C#使用twilio将whatsApp消息发送到任何号码

来自分类Dev

使用cURL使用PHP将文件发送到API

来自分类Dev

使用log4j SMTPAppender将日志发送到电子邮件

来自分类Dev

使用py4j将矩阵作为int [] []数组从Python发送到Java

来自分类Dev

使用exim4将电子邮件从VM发送到具有posfix的VM

来自分类Dev

如何使用 log4j2 将批量数据发送到 elasticsearch

来自分类Dev

使用ksoap2将对象列表发送到Web服务c#.Net

来自分类Dev

使用TCP将浮点数组从C ++发送到C#

来自分类Dev

使用NSMutableArray发送到不可变对象的突变方法

来自分类Dev

使用Java将对象列表发送到Rest服务

来自分类Dev

使用结构将值发送到另一个函数-这有什么问题?

来自分类Dev

如何使用API和C#将消息发送到电报?

Related 相关文章

  1. 1

    使用angularjs将多个对象发送到webapi

  2. 2

    使用信号将字典对象发送到线程类

  3. 3

    是否可以使用Kafka将Java对象发送到C#App

  4. 4

    使用C将BMP图像发送到串口

  5. 5

    使用JavaScript将“%”发送到API

  6. 6

    如何使用Paho C客户端将数据作为JSON对象发送到MQTT代理

  7. 7

    使用类函数更改S4对象的“类”时会发生什么情况?

  8. 8

    如何在Android中使用Volley将JSON对象发送到服务器

  9. 9

    如何使用Javascript XMLHttpRequest将JSON数据对象发送到服务器?

  10. 10

    如何使用ExecuteApplicationPipeline准备器将非字符串对象发送到管道中

  11. 11

    使用cURL将imagepng()对象发送到服务器

  12. 12

    使用jQuery将JSON对象发送到MVC 6 WebApi控制器

  13. 13

    使用AJAX将JSON对象发送到服务器

  14. 14

    使用FormData对象将数据发送到AJAX中的控制器

  15. 15

    使用 Python 将 JSON 对象发送到 tcp 侦听器端口

  16. 16

    使用 AsyncTask 和 POST 方法将变量发送到服务器并取回 JSON 对象

  17. 17

    使用 Axios 将 Blob 发送到服务器,接收空对象

  18. 18

    如何使用C#使用twilio将whatsApp消息发送到任何号码

  19. 19

    使用cURL使用PHP将文件发送到API

  20. 20

    使用log4j SMTPAppender将日志发送到电子邮件

  21. 21

    使用py4j将矩阵作为int [] []数组从Python发送到Java

  22. 22

    使用exim4将电子邮件从VM发送到具有posfix的VM

  23. 23

    如何使用 log4j2 将批量数据发送到 elasticsearch

  24. 24

    使用ksoap2将对象列表发送到Web服务c#.Net

  25. 25

    使用TCP将浮点数组从C ++发送到C#

  26. 26

    使用NSMutableArray发送到不可变对象的突变方法

  27. 27

    使用Java将对象列表发送到Rest服务

  28. 28

    使用结构将值发送到另一个函数-这有什么问题?

  29. 29

    如何使用API和C#将消息发送到电报?

热门标签

归档