Tuple 总结
优质
小牛编辑
136浏览
2023-12-01
Tuple 库为C++带来了 tuples 的概念。它是符合直觉和简单明了的,虽然它的主要用途看起来就是用于从函数返回多个返回值,但它也可以用于创建各种逻辑组合,就象在标准库容器中保存一组元素一样。这种方法和为各个不同的返回类型创建一个 struct
是相同的,但后者不仅沉闷,而且不可能作出递归的泛型解决方案。使用 Boost.Tuple 就可以解决这些问题。
在本章中,我们看到了如何使用 Tuple 库,以及如何用函数对象扩充它,还有如何对 tuple 使用算法。通过索引来访问元素,以及 get_head
/get_tail
成员函数,提供了使用 tuple
s 的一致性,使得许多解决方案可以实现,而使用用户定义类型(UDTs)时是不可能的。
Boost.Tuple 的创建者,Jaakko Järvi,应该为这个杰出的库获得荣誉。他的努力有力地证明了,几乎所有C++中缺少的东西都可以由天才的设计者通过库增加进来。