什么是R的SEXP类型的C#等价物?

时间:2015-06-03 14:33:09

标签: c# r

我想在一个dll中调用一个方法,该方法从C#返回一个'SEXP'类型的变量。在C#中类型为'SEXP'的等价物是什么,或者如何在C#中声明SE​​XP变量。 提前谢谢。

1 个答案:

答案 0 :(得分:0)

我强烈建议您在C#项目中使用包https://www.nuget.org/packages/R.NET.Community,并且您可能希望从https://github.com/jmp75/rdotnet克隆或分叉R.NET以获取代码示例。

R.NET已经为R&#39的SEXP提供了所有互操作胶水代码,在C#中

例如在R.NET /REngine.cs

public SymbolicExpression GetSymbol(string name, REnvironment environment) 

更接近与C互操作的胶水代码在R.NET / Internals下。 R.NET使用委托(Internals / Delegates.cs)来执行PInvoke。这不是一种强制性的方法,而是比传统的PInvoke更少的代码。

重新启动从类继承以促进PInvoke

public class UnmanagedDll

您将找到如何在https://github.com/jmp75/dynamic-interop-dll

包装和调用本机库的示例