Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
从VC+调用R函数+; 我需要在C++代码中运行R的统计函数。有没有办法从C++代码中调用它们?我使用的是VS2005,我是否需要包含任何头文件或链接任何库?我使用他们网站提供的标准Windows安装程序安装了R_C++_R_Visual C++ - Fatal编程技术网

从VC+调用R函数+; 我需要在C++代码中运行R的统计函数。有没有办法从C++代码中调用它们?我使用的是VS2005,我是否需要包含任何头文件或链接任何库?我使用他们网站提供的标准Windows安装程序安装了R

从VC+调用R函数+; 我需要在C++代码中运行R的统计函数。有没有办法从C++代码中调用它们?我使用的是VS2005,我是否需要包含任何头文件或链接任何库?我使用他们网站提供的标准Windows安装程序安装了R,c++,r,visual-c++,C++,R,Visual C++,关于,简单地说: 正如我们经常提到的,R本身并不是在 VS*实现C代码的硬连接,但可能和C++代码 不可能(因为函数头信息未标准化) 根据标准,Rcpp和RInside在Windows上都能很好地工作 Windows工具链。(RInside确实存在错误,但现在已修复。) Rcpp FAQ中有更多关于VS*的内容(即,你不能期望这一点) 如果R本身不能与编译器一起工作,则可以工作) 如果您必须使用VS*,那么最好的选择可能是更松散的耦合 通过网络和使用Rserve 如果您可以切换编译器,那么Rc

关于,

简单地说:

  • 正如我们经常提到的,R本身并不是在 VS*实现C代码的硬连接,但可能和C++代码 不可能(因为函数头信息未标准化)

  • 根据标准,Rcpp和RInside在Windows上都能很好地工作 Windows工具链。(RInside确实存在错误,但现在已修复。)

    Rcpp FAQ中有更多关于VS*的内容(即,你不能期望这一点) 如果R本身不能与编译器一起工作,则可以工作)

  • 如果您必须使用VS*,那么最好的选择可能是更松散的耦合 通过网络和使用Rserve

    如果您可以切换编译器,那么Rcpp/RInside可能会引起兴趣;和 R API的其余部分也可供您使用

  • Rcpp等拥有丰富的文档,包括Rcpp简介pdf(这是 还有同行评议的文章)和前面提到的Rcpp常见问题解答——以及一个专门的邮件列表


请不要越过柱子。我也只是回答了这个问题。

< P>所提供的RADIUS的二进制版本不是在微软Visual C++下构建的。在文件ReadMe.txt中,作者指出没有针对Windows的配置,但有一个特殊的Makefile.win。通过使用“make-f Makefile.win”,我们没有成功地构建它,因为没有提供config.h文件(仅提供config.h.in)

  • 因此,在头文件Rsrv.h中注释以下行:


    //#包括“config.h”


  • 在此阶段,将生成以下错误:


    rsrv.h(384):致命错误C1189:#错误:“无法确定endianness。请确保包含config.h或定义了{BIG | LITTLE}endianness。”


  • 解决与endianness相关的问题。在头文件Rsvr.h中,替换:


  • 作者:



    使用Winsock的应用程序必须与Ws2_32.lib库文件链接


    <>关于RR和微软Visual C++集成的更多细节,访问

    我发现这是一个有希望的编辑:这是从R调用C++,BUM:(编辑:等等!我发现了一些东西):谢谢卡尔,我已经查过RCPP和RIN,但是他们没有提供足够的细节来处理VS。我希望有人能将R与VS结合使用,并告诉我该怎么做。也许这可以让我们了解一些情况,谢谢,但我在那里找不到太多:(在这里讨论R和C,值得一试:)谢谢德克,我刚刚得到了关于R-help的回复。我想我将不得不使用R以外的东西…或者微软以外的东西。欢迎使用堆栈溢出!虽然这在理论上可以回答这个问题,但在这里包括答案的基本部分,并提供链接供参考。
    /* Windows is little-endian is most cases, anywhere else we're stuck*/
     # error "Cannot determine endianness. Make sure config.h is included or  __{BIG|LITTLE}_ENDIAN__ is defined ."
    # endif
    
    /********* MODIFICATION *************/
    
    /* # error "Cannot determine endianness. Make sure config.h is included or __{BIG|LITTLE}_ENDIAN__ is defined ." */
    /************************************/
    #define _BIG_ENDIAN (*(uint16_t *)?\xff? < 0x100)
    
    /* indicate to the linker that the Ws2_32.lib file is needed */
    #pragma comment(lib, "Ws2_32.lib")