繁体   English   中英

正确使用std :: tuple?

[英]Using std::tuple correctly?

我最近学会了如何使用std :: tuple(之前我从未需要它),并且很好奇何时才能在容器上使用它? 我只是问,因为std :: tuple不像容器,因为它需要诸如std :: get和std :: make_tuple之类的东西。

它更像是结构的替代品,而不是容器的替代品。 但是,在大多数情况下,出于可读性原因,最好实际定义结构。 元组最好用于具有可变数量参数的模板中。

std::tuple包含固定数量的不同类型的元素。 当您想要将不同类型的几个对象组合在一起时,可以使用它。 当分组没有任何特别有用的语义时,我会在struct使用它。 例如,当函数需要返回多个对象时, std::tuple很有用。 另一方面,容器包含多个相同类型的元素(可能是不同的数量)。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM