c++對應於r的資料型別有如下這些:
double⇔numeric
int⇔integer
string⇔character
logical⇔bool
在c++中可以直接使用r的物件有:`
所有算術邏輯運算子都是可以向量化的:+,-,*,/,pow,<,<=,>,>=,==,!=,!
#include using namespace rcpp;
// [[rcpp::export]]
numericvector pdistc2(double x, numericvector ys)
所有標準分布的 d/q/p/r 函式
以及 nona(x) 判斷向量x不包含任何缺失值,並允許一些數**算上的優化。
這是c++所擁有的模板庫,用過c++的應該都知道,具體可以到這裡看boost(
我們可以使用迭代器來操縱r的物件。
#include using namespace rcpp;
// [[rcpp::export]]
double sum3(numericvector x)
return total;
}
要注意每個資料結構型別都有乙個迭代器,
比如numericvector::iterator
和charactervector::iterator
是不同的。
stl所提供的資料結構也是可以使用的,rcpp知道如何將stl的資料結構轉換成r的資料結構,所以可以從函式中直接返回他們,而不需要自己進行轉換。
這些資料結構有:array, bitset, list, forward_list, map, multimap, multiset, priority_queue, queue, dequeue, set, stack, unordered_map, unordered_set, unordered_multimap, unordered_multiset, vector.
具體的使用方法可以參考:
tar 實用手冊
url tar 命令用來將很多檔案打包成乙個單一的磁帶或者磁碟歸檔,並可從歸檔檔案恢復出檔案列表。當你需要通過 email 傳送大量檔案時或者傳輸檔案時非常有用。這裡我們介紹一些基本的使用場景。tar 的語法 tar options file.tar file1 file2 file.tar 是 t...
GraphEdit 實用手冊
graphedit graph filter 的原則上 directshow 是基於模組化,每個功能模組即單元元件都採取 com元件方式,稱為 filter 將filter 串聯在一起就形成了 graph filter 可以算是乙個簡單的 directshow 應用程式。通過這個工具,可以很直觀的看...
markdown 標籤實用手冊
段落和換行 乙個 markdown 段落是由乙個或多個連續的文字行組成,它的前後要有乙個以上的空行 空行的定義是顯示上看起來像是空的,便會被視為空行。比方說,若某一行只包含空格和製表符,則該行也會被視為空行 普通段落不該用空格或製表符來縮排。標題 這是 h1 這是 h2 這是 h6 區塊引用 這是乙...