tuple
说到tuple,肯定会第一时间想到python语言,但tuple也不仅仅只在python中有,在C#,C++等语言中都有这样的数据结构。
在C++中的tuple和python语言中是类似的,是一个强大的允许存放多个不同类型数据的容器,是对pair的泛化。
要在C++中使用tuple,首先需要引用头文件tuple及名空间std。
1.基本操作
头文件:#include<tuple>
原型:tuple<T1,T2,T3...TN>
新建pair:tuple<string,string,int> book//书的书名,作者和价格可以组成一个tuple
赋值:book=make_tuple("c++ primer","moumou",109);
获取tuple中的值:get<0>(book);//获取第一个值
技巧:可以用typedef来简化tuple的写法
typedef tuple<string,string,int> BookInfo;//书名,作者,价格
BookInfo book;
book=make_tuple("c++ primer","moumou",109);
2.示例
#include <iostream>
#include <vector>
#include <algorithm>
#include <tuple>
using namespace std;
typedef tuple<string,string,int> BookInfo;//书名,作者,价格
int main()
{
BookInfo book;
book=make_tuple("c++ primer","moumou",109);
cout<<"name:"<<get<0>(book)<<endl<<"author:"<<get<1>(book)<<endl<<"price:"<<get<2>(book)<<endl;
return 0;
}
运行结果: