C++11新特性之tuple元组

1.介绍

        tuple(元组)是C++11新引入的一种类模版,其特点是:实例化的对象可以存储任意数量、任意类型的数据。当需要存储不同类型的元素或返回不同类型的多个数据时,都可以使用tuple。

2.tuple用法

        (1)创建tuple对象

        tuple本质上是个类模板,定义在头文件并位于std命名空间,因此想使用它,需要在程序中包含以下代码:

#include <tuple>
using std::tuple;

        实例化tuple模版类对象常用的有两种——使用该类的构造函数或使用make_tuple()函数。下边各举个例子:

std::tuple<int, char> first;
auto first = std::make_tuple (1,'a');

在使用中,两种方法都可,可自行选择。

3.tuple常用函数

        (1)tup1.swap(tup2)。交换两个tuple对象存储的内容。

        (2)get<num>(tup)。获取tup对象的第num+1个元素。

        (3)tuple_size<type>::value。获取tup的元素个数。type是tup对象的类型,可以使用decltype直接推导。  

        (4)tuple_element<i,type>::type。获取tup对象第i+1个元素的类型。

        (5)tie(args......) = tup。将tup内的元素逐一赋值给args...提供的左值变量。

        (6)tuple_cat(args....)。args...为多个tup对象。将多个tup对象的元素合并为一个。

4.总结

        优点:tuple可以存储任意数量、任意类型的数据。

        注意事项:使用过程中要注意库函数或变量的功能与用法,正确使用。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值