本文介绍: C++不像python可以轻易地处理多值返回问题,处理使用指针或者引用将需要返回的值通过参数带出来,还有几种特殊的方式。
C++不像python可以轻易地处理多值返回问题,处理使用指针
或者引用
将需要返回的值通过参数带出来,还有几种特殊的方式。
引用自:https://mp.weixin.qq.com/s/VEvUxpcJPsxT9kL7-zLTxg
1. Tuple+ tie
通过使用std::tie
,我们可以将tuple
中的元素解包到不同的变量中。
std::tie
通常用于创建元组或者用于解构元组。主要用途有两个:将多个变量绑定到一个元组,或者从元组中解构多个值。
将多个变量绑定到一个元组
从元组中解构多个值
处理多值返回
Struct Binding 结构体绑定
C++17引入了结构体绑定,可以方便地从结构体、数组、元组等数据结构中将其中的成员变量绑定到命名的变量上,常与auto
一起使用
结构体绑定的含义
结构体绑定解决多值返回
函数callback
通过传递处理返回值的callback,让用户自定义处理,这样便实现了返回多个值,实现更加灵活的代码结构。
模版推导
这个有点复杂,GPT解释如下:
模版推导处理多值返回
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。