C++11:maketuple

技术C++11:maketuple C++11:make_tuple翻译来自:https://thispointer.com/c11-make_tuple-tutorial-example/
本文中,我

C 11:make_tuple

翻译来自:https://这个指针。com/c11-make _ tuple-教程-示例/

本文中,我们将讨论什么是std:make_tuple以及我们为什么需要它。

初始化一个 std::tuple

我们可以通过在构造函数中传递元素作为参数来初始化一个std:tuple,即

//创建和初始化一个元组

std:tuple int,double,STD :3360 string result 1 { 22,19.28,' text ' };

您可能已经观察到我们需要在元组中将参数类型指定为模板参数。如果元素数量更多,有时会很痛苦。

有了这个,就没有办法自动推断它们,即以下代码将给出编译错误即

//编译错误,因为无法推断元组中元素的类型

自动结果{ 22,19.28,' text ' };//编译错误

错误:无法从“{22,1.9280000000000001e,text'}”推导出STD :3360初始值设定项_列表_ Tp '

自动结果{ 22,19.28,' text ' };

但是c 11提供了一些可以帮助我们避免这种痛苦的东西,即std::make_tuple。

std::make_tuple

std:make_tuple通过从参数类型推导出元组中元素的目标类型来创建一个标准:图对象。

让我们通过一个例子来理解,

//使用std:make_tuple创建一个元组

自动结果2=STD : make _ tuple(7,9.8,' text ');

这里我们没有指定标准:图对象结果封装的任何类型的元素。

std:make_tuple做了以下事情,

std::make_tuple接受三个参数并自动推导出它们的类型为int、double和字符串。然后它在内部创建了一个std:tupleint,double,std:string对象并初始化它并返回它。

//使用std:make_tuple创建元组

自动结果=STD : make _ tuple(7,9.8,' text ');

因此,基本上std:make_tuple有助于自动推导元组类型。

完整的例子如下

#包含输入输出流

#包含元组

#包含字符串

int main()

{

//创建和初始化元组

std:tupleint,double,STD :3360 string result 1 { 22,19.28,' text ' };

//编译错误,因为无法推断元组中元素的类型

//自动结果{ 22,19.28,' text ' };//编译错误

//使用std:make_tuple创建元组

自动结果2=STD : make _ tuple(7,9.8,' text ');

//std:make_tuple自动推导类型并创建元组

//打印值

STD : cout ' int value=' STD :3360 get 0(结果2)STD : endl;

STD : cout ' double value=' STD : get 1(结果2)STD : endl;

STD : cout '字符串值=' STD : get 2(结果2)STD : endl;

返回0;

}

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/112522.html

(0)

相关推荐

  • 1公斤柴油等于多少升,二百公斤柴油等于多少升柴油

    技术1公斤柴油等于多少升,二百公斤柴油等于多少升柴油楼上的别瞎算害人,快回去进修完小学再来回复别人的问题1公斤柴油等于多少升。国标柴油的密度范围为0.810~0.855不同型号的密度不同常用如:0#柴油0.84密度公用/

    生活 2021年10月23日
  • Web前后端分离开发的方法是什么

    技术Web前后端分离开发的方法是什么本篇内容主要讲解“Web前后端分离开发的方法是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Web前后端分离开发的方法是什么”吧!在传

    攻略 2021年11月2日
  • 生信pheatmap绘制热图(pheatmap作图前数据)

    技术Pheatmap怎样绘制热图Pheatmap怎样绘制热图,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。随机生成,10个基因,每个基因4个处理,每个处理3

    攻略 2021年12月20日
  • ZooKeeper知识点都有哪些

    技术ZooKeeper知识点都有哪些本篇文章为大家展示了ZooKeeper知识点都有哪些,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。一、 从集中式到分布式1. 集中式集中式特点

    攻略 2021年11月12日
  • C#泛型委托是什么

    技术C#泛型委托是什么本篇内容主要讲解“C#泛型委托是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“C#泛型委托是什么”吧!C# 泛型委托学习之前首先来看看什么是C# 委

    攻略 2021年12月2日
  • Oracle数据的维护指令有哪些

    技术Oracle数据的维护指令有哪些这篇文章将为大家详细讲解有关Oracle数据的维护指令有哪些,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。  一、SQL  1.SQL-Struct

    攻略 2021年11月20日