std::pair和std::tuple

embedded/2024/9/22 13:22:45/

提示:文章

文章目录

  • 前言
  • 一、背景
  • 二、
    • 2.1
    • 2.2
  • 总结

前言

前期疑问:
本文目标:


一、背景

最近

std::pair和std::tuple

二、用法

1.1 创建

看代码规范,提到:通过std::pair 和std::tuple ,函数可以同时返回多个值。相比起使用额外参数来获取输出,返回值能让阅读者更明确函数
输出的数据

查了下std::pair和std::tuple的用法,后面的代码中可以尝试使用

[C++] std::tuple

下面的是之前看过并记录的文档

2024年7月30日15:12:15

https://blog.csdn.net/u013250861/article/details/128415126

后面代码中还有对tuple执行std::get<0>用法的代码,一开始肯定不懂,查了下资料,就是取tuple的成员

https://blog.csdn.net/stf1065716904/article/details/81331801

2024年9月10日19:15:37

下面是自己写的验证代码

std::tuple<int, float, bool> tupleFunc()
{int a = 1;float b = 1.2f;bool c = true;std::tuple<int, float, bool> ret = std::make_tuple(a, b, c);return ret;
}int main()
{std::tuple<int, float, bool> retTuple = tupleFunc();int a = std::get<0>(retTuple);float b = std::get<1>(retTuple);bool c = std::get<2>(retTuple);std::cout << "a:    " << a << " b:    " << b << " c:   " << c << std::endl;return 0;
}
// 打印信息 
// a:    1 b:    1.2 c:   1

先写一下能满足自己使用的验证代码,可能有其他复杂功能,不过可以等到需要用的时候再深究。

1.2、std::tuple声明初始化为0

#include <tuple>
#include <iostream>int main() {// 使用 std::make_tuple 创建一个含有0的 std::tupleauto my_tuple = std::make_tuple(0, 0, 0);// 访问并打印 tuple 中的元素std::cout << "Tuple element 0: " << std::get<0>(my_tuple) << std::endl;std::cout << "Tuple element 1: " << std::get<1>(my_tuple) << std::endl;std::cout << "Tuple element 2: " << std::get<2>(my_tuple) << std::endl;return 0;
}

三、

3.1


总结

未完待续


http://www.ppmy.cn/embedded/115055.html

相关文章

C#解决方案的各种操作

C#开发编程软件下载安装 C#开发编程软件下载安装_c#下载安装-CSDN博客文章浏览阅读208次。。。。_c#下载安装https://rxxw-control.blog.csdn.net/article/details/140879228 C#和S7-1200PLC S7.NET通信 C#和S7-1200PLC S7.NET通信_c# s1200 s7协议设置-CSDN博客文章浏览阅读…

python sql中带引号字符串(单双引号)转义处理

描述&#xff1a; 最近在爬取数据保存到数据库时&#xff0c;遇到有引号的字符串插入MySQL报错&#xff1a;1064, "You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 转义字符串…

深度学习之微积分预备知识点(2)

极限&#xff08;Limit&#xff09; 定义&#xff1a;表示某一点处函数趋近于某一特定值的过程&#xff0c;一般记为 极限是一种变化状态的描述&#xff0c;核心思想是无限靠近而永远不能到达 公式&#xff1a; 表示 x 趋向 a 时 f(x) 的极限。 知识点口诀解释极限的存在左…

染色算法的简单概述

问题1 问题描述 染色算法很简单。如果想知道 k 个寄存器够不够用&#xff0c;你只需要找到一个少于 k 条边的节点&#xff0c;把它从图中去掉。接着再找下一个少于 k 条边的节点&#xff0c;再去掉。如果最后整个图都被删掉了&#xff0c;那么这个图一定可以用 k 种颜色来染色…

【Temporal】方法规范

在workflow或者childWorkflow的方法代码中&#xff0c;不能使用golang的一些库方法&#xff0c;比如sleep&#xff0c;go协程等&#xff0c;必须使用其对应的封装方法&#xff0c;比如对应关系如下&#xff1a; time.Sleep -> workflow.Sleepgo xx -> workflow.Go(xx) 这…

Redis——redispluspls库list及set类型相关接口使用

文章目录 list 类型相关接口lpush和lrangerpushlpop和rpopblpop和brpopllen set 类型相关接口sadd和smemberssismemberscardspopsinstersinterstore list 类型相关接口 lpush和lrange void lrange_lpush(sw::redis::Redis& redis){std::cout<<"lpush 和 lrang…

Elasticsearch如何排序,分页以及高亮查询

目录 一、排序 二、分页查询 三、高亮查询 一、排序 ES中默认使用相关度分数实现排序&#xff0c;可以通过搜索语法定制化排序。 GET /索引/_search { "query": 搜索条件,"sort": [{"字段1":{"order":"asc"} },{ "字…

mysql学习教程,从入门到精通,SQL 删除表(DROP TABLE 语句)(21)

1、SQL 联表查询(Join) 在编写SQL联表查询&#xff08;Join&#xff09;时&#xff0c;我们首先要明确查询的目的&#xff0c;即我们需要从哪些表中提取数据&#xff0c;以及这些表之间如何关联。以下是一个简单的示例&#xff0c;假设我们有两个表&#xff1a;employees&…