【问题标题】:Calling a cpp function inside RDCOMClient package在 RDCOMClient 包中调用 cpp 函数
【发布时间】:2023-04-07 05:57:02
【问题描述】:

R 编程新手,请耐心等待。

我正在尝试调用 RDCOMClient 包内名为 R_convertDCOMObjectToR 的 cpp 文件中定义的函数。我没有写那个包 - 它可以在这里找到:https://github.com/omegahat/RDCOMClient

我试着这样称呼它:

.Call("R_convertDCOMObjectToR", varQuestionNames, PACKAGE = "RDCOMClient")

但我收到以下错误:

.Call("R_convertDCOMObjectToR", varQuestionNames, PACKAGE = "RDCOMClient") : "R_convertDCOMObjectToR" 不适用于 .Call() 对于包“RDCOMClient”

有没有办法让这个功能可见?我应该要求作者改变他的图书馆吗?

感谢您的指点!

【问题讨论】:

  • 这与Rcpp无关,所以我将删除[rcpp]标签。

标签: r rdcomclient


【解决方案1】:

您根本不能从任何给定的包中调用任何给定的 C 函数除非该包导出它

请参阅Writing R Extensions, Section 5.4.3,各种包中的几个示例用法(例如我的RApiSerializeRApiDatetime),以及网站上的其他问题。

【讨论】:

  • 感谢 Dirk - 我实际上正在阅读您的“无缝 R 和 C++ 集成”,而我显然才刚刚开始。如果我浪费了你的时间,我深表歉意......
猜你喜欢
  • 2012-08-13
  • 2023-03-27
  • 2020-08-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多