Skip to content

tuple 元组

元组 tuple 是泛化的 std::pair,我们通常是把它当作一个结构体使用,比如我们可以将多个参数整合为一个结构体传递到函数内部,实现一些简洁的操作。

初始化

cpp
//两种初始化方式
tuple<int,string,vector<int>> test{1,"hello,world",{4,5,6}};
tuple<int, string,vector<int>> test(1,"hello,world",{4,5,6});
//相当于结构体:
struct Tuple
{
   int a;
   string b;
   vector<int> c;
}

访问元素

元组访问元素 示例代码
cpp
#include<bits/stdc++.h>
using namespace std;
int main()
{
    tuple<int,string,vector<int>> test{1,"hello,world",{4,5,6}};
    get<0>(test) = 2;  //修改第一个成员的值为2
    cout << get<0>(test) << endl;		//打印test第一个成员,其类型为int
    cout << get<1>(test) << endl;		//打印test第二个成员,其类型为string
    cout << get<2>(test)[0] << endl;	//打印test第三个成员vector<int>的第一个元素
    return 0;
}