tupe元组是一个固定大小的不同类型值的集合,是泛化的std::pair,可以把它当结构体使用。

构造一个元组:

tuple<const char*, int> tp = make_tuple("sendpack", 8);

int i = 1;
auto tp = std::tie("aa", i);

相当于:

struct tp
{
    char* p;
    int len;
};

获取元组的值,使用std::get获取某个值:

const char* data = std::get<0>(tp);

使用std::tie解包:

const char* a;
    int x;
    std::tie(a, x) = tp;

如果不想解某个位置的值可以使用std::ignore,如std::tie(std::ignore, x) = tp;

使用tuple_cat可以连接多个元组:

tuple<int, string, double> t1(10, "test", 2.1);
    int n = 7;
    auto t2 = tuple_cat(t1, make_tuple("Foo", "bar"), t1, std::tie(n));
    n = 10;

print(t2);

// 10 test 2.1 Foo bar 10 test 2.1 10

c++11 tupe相关推荐

  1. python对象类型及其运算 数字 字符串 list dict tupe dict

    python内置对象的类型及其所支持的运算 我们在编程时为什么要使用内置对象类型,以及我们在编程时尽可能使用自定义类型呢还是但凡有可能都去使用内置类型.很显然,对于python而言,内置类型更容易理解 ...

  2. C++11、C++14、C++17、C++20新特性总结(5万字详解)

    文章目录 C++ 11是什么,C++ 11标准的由来 C++ auto类型推导完全攻略 auto 类型推导的语法和规则 auto 的高级用法 auto 的限制 auto 的应用 使用 auto 定义迭 ...

  3. c++11新特性--tuple

    tuple C++11 标准新引入了一种类模板,命名为 tuple(中文可直译为元组).tuple 最大的特点是:实例化的对象可以存储任意数量.任意类型的数据. 实例化 tuple 模板类对象常用的方 ...

  4. 2020-09-11 C++ 11 tuple元组和tie()的简单介绍

    原文 :https://www.cnblogs.com/qicosmos/p/3318070.html 这次要讲的内容是:c++11中的tuple(元组).tuple看似简单,其实它是简约而不简单,可 ...

  5. Redis 笔记(11)— 文本协议 RESP(单行、多行字符串、整数、错误、数组、空值、空串格式、telnet 登录 redis)

    RESP 是 Redis 序列化协议Redis Serialization Protocol 的简写.它是一种直观的文本协议,优势在于实现异常简单,解析性能极好. ​ Redis 协议将传输的结构数据 ...

  6. Linux shell 学习笔记(11)— 理解输入和输出(标准输入、输出、错误以及临时重定向和永久重定向)

    1. 理解输入和输出 1.1 标准文件描述符 Linux 系统将每个对象当作文件处理.这包括输入和输出进程.Linux 用文件描述符(file descriptor)来标识每个文件对象.文件描述符是一 ...

  7. 只要5分钟用数据可视化带你看遍11月份新闻热点事件

    2017年11月份已经离我们而去,在过去的11月份我们也许经历了双十一的剁手,也可能亲眼看见了别人剁手.11月份的北京大兴区发生了"11·18"重大火灾,国内多家幼儿园也多次上了头 ...

  8. 1-1 机器学习和深度学习综述-paddle

    课程>我的课程>百度架构师手把手教深度学习>1-1 机器学习和深度学习综述> 1-1 机器学习和深度学习综述 paddle初级课程 王然(学生) Notebook 教育 初级深 ...

  9. CUDA 11功能清单

    CUDA 11功能清单 基于NVIDIA Ampere GPU架构的新型NVIDIA A100 GPU在加速计算方面实现了最大的飞跃.A100 GPU具有革命性的硬件功能,CUDA 11与A100一起 ...

最新文章

  1. 【PC工具】更新win10关闭更新工具,接速度最快最好用的文件内容搜索工具:searchmyfiles...
  2. 小程序promise封装post请求_微信小程序用promise封装请求
  3. .jar中没有主清单属性_面试官问:为什么SpringBoot的 jar 可以直接运行?
  4. Express请求处理-静态资源的处理
  5. anacondapythonyolo3配置_Windows anaconda 运行yolov3
  6. spring-service.xml 模板
  7. linux ubuntu 12.04 下默认是安装了openjdk的
  8. 全球第一张中文网络协议分析图——By 成都科来软件
  9. pku2406 Power Strings(kmp字符匹配,next数组)
  10. Cesium开发环境搭建的几种方法总结
  11. vue、vant上传附件功能实现
  12. cad剖切线的快捷键_Auto CAD2017剖切符号快捷键是什么呢?
  13. iOS字体大小适配机型的几种方法
  14. 千牛卖家工作平台使用教程
  15. 手机游戏《魔塔》实现细节——(1)需求收集
  16. CIDR划分子网: 一个自治系统有 5 个局域网,其连接如下图。LAN1 至 LAN4 上的主机数目分别为 180、60、15、20。 该。。。
  17. 关联分析python牛奶面包_Python数据分析基础ReadingDay13_关联分析Apriori
  18. 荧光定量pcr探针法实验检测服务
  19. Rviz玩转三轴机械臂
  20. 有效利用Oracle官方的免费学习资源

热门文章

  1. 云米与友阿股份达成战略合作,家庭物联网落地湖南
  2. xilinx芯片cadence原理图库制作
  3. shell条件测试操作
  4. 解决echarts在360浏览器兼容模式和ie浏览器不兼容问题
  5. GO--redis redigo hel 删除多个参数的传值方法
  6. 诺基亚7.2 刷入第三方ROM
  7. linux嵌入式开发板实训心得,嵌入式实训心得体会.docx
  8. Rabin Karp 算法详解及Python实现
  9. Android之MediaPlayer播放网络视频的实现方法
  10. Android手机fc模拟器,安卓fc模拟器