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)

相关推荐

  • catboost特征学习(catboost详细使用教程)

    技术怎么使用CatBoost进行快速梯度提升本篇文章给大家分享的是有关怎么使用CatBoost进行快速梯度提升,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。

    攻略 2021年12月21日
  • JavaScript中数组Array的常用方法有哪些

    技术JavaScript中数组Array的常用方法有哪些这篇文章主要为大家展示了“JavaScript中数组Array的常用方法有哪些”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习

    攻略 2021年11月2日
  • properties文件怎么读取里面数据(properties文件数据怎么获取)

    技术怎样读取properties或yml文件数据并匹配今天就跟大家聊聊有关怎样读取properties或yml文件数据并匹配,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有

    攻略 2021年12月18日
  • 9个适用于Web开发人员的CSS工具分别是什么

    技术9个适用于Web开发人员的CSS工具分别是什么这篇文章将为大家详细讲解有关9个适用于Web开发人员的CSS工具分别是什么,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。

    攻略 2021年11月11日
  • 抖音买赞自助下单平台,抖音免费点赞网站在线?

    技术抖音买赞自助下单平台,抖音免费点赞网站在线?根据抖音的热门原则,这绝对是有帮助的:在你发布了一段时间之后,将根据你的作品的播放量,点赞量,评论数量来判断你是否符合热门标准。因此,上热播放量是非常重要的。但也不是说只刷

    测评 2021年11月9日
  • Java学习之Java面试题

    技术Java学习之Java面试题 Java学习之Java面试题千锋重庆Java的小编为大家整理了部分中级Java软件开发面试题以供大家参考:1.谈谈对面向对象的理解;以及三大特征;
    面向对象是基于万物皆

    礼包 2021年11月29日