簡體   English   中英

RInside InternalFunction在類上,如何從R調用函數

[英]RInside InternalFunction on a class, how to call the function from R

我需要從C ++調用R,並且正在使用出色的RInside / Rccp軟件包。 我不是R專家,這可能會解釋我的問題,如果太明顯,則很抱歉。

我創建了一個對象和一個包裝器類,類似於Rinside示例/standard/rinside_interactive0.cpp。 在此示例中,它顯示了如何將方法附加到R屬性類。

wr.attr("class") = "Solver";    
R["Solver"] = wr;
... more code
R["names.Solver"] = Rcpp::InternalFunction(& Names); <-- Hot to call this one from R

實際上,我從未見過R調用此函數,R語法是什么? 我雖然以這種方式使用R.parseEval:

R.parseEval("Solver.names()");

但這不起作用,並給出錯誤:

Error in Solver.names() : could not find function "Solver.names"
terminate called after throwing an instance of 'std::runtime_error'
what():  Error evaluating: Solver.names()

然后我的問題是如何在R中調用Solver.names函數(在C ++代碼中處理)? 請注意,分配/檢索功能運行良好,可能是因為它們在某種程度上是“原始”的?

非常感謝Franck

我發現了,如果有人在搜索,我會發布:

R.parseEval("names.Solver(Solver)");

對我來說不是很優雅..它使用functionName.class(Object)..

F。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM