C++中tuple的使用

Posted 星火撩猿

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C++中tuple的使用相关的知识,希望对你有一定的参考价值。

#include<iostream>
#include <tuple>
using namespace std;

int main()

	
	//make_tuple: 用于创建tuple,在tuple之中可以是完全不同的数据类型
	auto tup1 = make_tuple("Hello", 3.14, 666);
	
	//tie: 用于拆开tuple,如果不想要某一位的值,可以直接将其用ignore代替
	double f = 0;
	tie(ignore,f,ignore) = tup1;
	cout << f << endl;
	
	//forward_as_tuple: 用于接受右值引用数据生成tuple
	auto tup2 = forward_as_tuple(666, "hello");
	
	//tuple_cat: 用于连接tuple
	tuple<float, string> tup11(3.14, "hello");
	tuple<int, char> tup22(100, 'world');
	auto tup3 = tuple_cat(tup11, tup22);
	
	//get<i>: 获取第 i 个元素的值
	std::tuple<float, string> tup4(3.14, "good");
	cout << get<0>(tup4) << endl; 
	
	//tuple_element: 获取tuple中特定元素数据类型
    cout << sizeof(tuple_element<0, decltype(tup4)>::type) << endl;
    
    //size: 获取tuple中元素个数
	cout << tuple_size<decltype(tup4)>::value << endl;
	
	system("pause");
	return 0;

以上是关于C++中tuple的使用的主要内容,如果未能解决你的问题,请参考以下文章

C++ - tuple

C++文档阅读笔记-Tuples in C++

C++文档阅读笔记-Tuples in C++

C++文档阅读笔记-Tuples in C++

C++ STL之tuple详解

C++ STL之tuple详解