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)

相关推荐

  • 分析Oracle RAC集群

    技术分析Oracle RAC集群这篇文章主要讲解了“分析Oracle RAC集群”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“分析Oracle RAC集群”吧!一、什么是

    攻略 2021年11月4日
  • 早餐有哪些,早餐应该吃什么东西比较好

    技术早餐有哪些,早餐应该吃什么东西比较好都说一年之计在于春早餐有哪些,一日之计在于晨,大家都知道早晨是充满活力的时候!一顿营养丰富的早餐也是非常重要的,尤其是对男性朋友!你们知道男性早餐吃什么最有营养吗,适合男人的早餐食

    生活 2021年10月27日
  • CSS中利用伪类、伪元素和相邻元素选择器的技巧有哪些

    技术CSS中利用伪类、伪元素和相邻元素选择器的技巧有哪些CSS中利用伪类、伪元素和相邻元素选择器的技巧有哪些,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望

    攻略 2021年11月16日
  • Linq-Include

    技术Linq-Include Linq-IncludeLINQ中的Include()有什么作用我尝试进行了大量研究,但我更像是数据库专家-因此,即使MSDN中的解释对我也没有任何意义.有人可以解释一下,

    礼包 2021年12月3日
  • 10月29日 课堂笔记

    技术10月29日 课堂笔记 10月29日 课堂笔记29日笔记:
    Flex 布局:
    https://www.runoob.com/w3cnote/flex-grammar.htmltarget:targe

    礼包 2021年11月1日
  • 如何使用Eclipse进行PHP的服务器端调试

    技术如何使用Eclipse进行PHP的服务器端调试这篇文章将为大家详细讲解有关如何使用Eclipse进行PHP的服务器端调试,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。首先,得将您P

    攻略 2021年11月25日