C tuple 元組 的實現 原理

2021-08-21 21:59:37 字數 825 閱讀 9756

c++最新中引入了 tuple, 可以定義任意多個型別的物件的組合, 關於c++ tuple 的實現,可以參照如下**例項來理解tuple實現的原理。

#include using namespace std;

templateclass tuple;

template<>class tuple<> {};

templateclass tuple:private tuple// 私有繼承自tuple

tuple(head v, tail... vtail) // 將第乙個元素 賦值給m_head, 其餘傳給基類

:m_head(v), inherited(vtail...)

{} head head() // 返回元組的第乙個元素

inherited& tail() // 返回該元組的基類引用

protected:

head m_head;

};templateostream& operator<<(ostream& os, tuple& tpe) // 當元素個數大於1時呼叫該方法

templateostream& operator<<(ostream& os, tuple& tpe) // 當元素個數為 1 是呼叫該方法

int main(void)

其中

tuple繼承自 tuple

tuple繼承自 tuple

tuple繼承自 tuple<>

C tuple元組的基本用法 總結

1,元組簡介 tuple是乙個固定大小的不同型別值的集合,是泛化的std pair。我們也可以把他當做乙個通用的結構體來用,不需要建立結構體又獲取結構體的特徵,在某些情況下可以取代結構體使程式更簡潔,直觀。std tuple理論上可以有無數個任意型別的成員變數,而std pair只能是2個成員,因此...

C tuple的使用,力推

這個真的很實用,況且還那麼的簡單,每個c 愛好者都應該知道 tupleint,int getjacks void main 4.使用make tuple tupleint m people3 make tuple ty 27 或者 auto m people4 make tuple ty 28 接下...

DRBD的元資料實現 GI元組的原理

drbd使用代標識gi tuple來確定複製資料的 代 通過gi tuple,drbd可以確定兩個節點是不是屬於同一集群的事實 而不是意外連線的兩個節點 確定重新同步時同步的方向 如果必要的話 確定是完全重新同步或者是部分重新同步是否滿足需求以及確認是否發生了裂腦。因此,gi的使用在drbd的演算法...