歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux編程 >> Linux編程

R語言-R調用C++程序

今天本人學習了如何利用R語言來調用C++程序。為什麼要這麼多呢? 因為R語言雖然方便,但是計算太慢了,尤其是在循環語句方面的使用,R語言簡直是無法忍受,所以在R語言中為了提高速度,必要時候還得改用C++來實現。

在R語言中要調用C++是通過Rcpp這個包來實現的。所以要先安裝Rcpp這個包咯!安裝完成後本人就開始來寫C++部分的代碼了,框架如下圖

在R語言傳給C++的參數中,有R的各種類型,比如向量,矩陣等等。具體轉化規則可以參考資料。

寫完上述C++代碼後,就可以來編譯成*.so文件了。編譯腳本如下

保存後執行sh compile.sh,然後得到了test.so文件。

接著,本人開始編寫test.R文件來使用它了。代碼如下

接下來就是最後一步了,即執行test.R文件。如下結果

好了到了這裡相信大家都知道如何利用R來調用C++了吧!接下來認識一些R到C++轉化類型。

今天只是一個開頭,更多內容需要讀者自己進一步學習!!!!!

C++ 設計新思維》 下載見 http://www.linuxidc.com/Linux/2014-07/104850.htm

C++ Primer Plus 第6版 中文版 清晰有書簽PDF+源代碼 http://www.linuxidc.com/Linux/2014-05/101227.htm

讀C++ Primer 之構造函數陷阱 http://www.linuxidc.com/Linux/2011-08/40176.htm

讀C++ Primer 之智能指針 http://www.linuxidc.com/Linux/2011-08/40177.htm

讀C++ Primer 之句柄類 http://www.linuxidc.com/Linux/2011-08/40175.htm

將C語言梳理一下,分布在以下10個章節中:

  1. Linux-C成長之路(一):Linux下C編程概要 http://www.linuxidc.com/Linux/2014-05/101242.htm
  2. Linux-C成長之路(二):基本數據類型 http://www.linuxidc.com/Linux/2014-05/101242p2.htm
  3. Linux-C成長之路(三):基本IO函數操作 http://www.linuxidc.com/Linux/2014-05/101242p3.htm
  4. Linux-C成長之路(四):運算符 http://www.linuxidc.com/Linux/2014-05/101242p4.htm
  5. Linux-C成長之路(五):控制流 http://www.linuxidc.com/Linux/2014-05/101242p5.htm
  6. Linux-C成長之路(六):函數要義 http://www.linuxidc.com/Linux/2014-05/101242p6.htm
  7. Linux-C成長之路(七):數組與指針 http://www.linuxidc.com/Linux/2014-05/101242p7.htm
  8. Linux-C成長之路(八):存儲類,動態內存 http://www.linuxidc.com/Linux/2014-05/101242p8.htm
  9. Linux-C成長之路(九):復合數據類型 http://www.linuxidc.com/Linux/2014-05/101242p9.htm
  10. Linux-C成長之路(十):其他高級議題

Copyright © Linux教程網 All Rights Reserved