gpt4 book ai didi

c++ - 提升元组类型的 hana 大小

转载 作者:搜寻专家 更新时间:2023-10-31 02:20:22 25 4
gpt4 key购买 nike

我知道如何在 boost::hana 中获取元组对象的大小,如下所示:

auto tupleSize = hana::size(hana::make_tuple(1,2,3))

但是元组类型的大小呢? STL 提供了以下元组类型特征:

constexpr size_t tupleSize = std::tuple_size<std::tuple<int, int, int>>::value;

hana 中是否存在相似的类型特征?

最佳答案

没有。我的猜测是您在这里滥用了 Hana,或者有一种等效的方法可以完成您想要实现的目标,而不必在元组类型上调用 size。但如果没有看到您的其余代码,我无法确定,所以对此持保留态度。

解决缺少类似 tuple_size 的元函数的方法是使用 declval。你可以这样写:

constexpr size_t tupleSize = decltype(
hana::size(std::declval<hana::tuple<T...>>())
)::value;

请注意,根据您必须调用它的上下文,如果您有此信息,甚至可以使用 sizeof...(T)

关于c++ - 提升元组类型的 hana 大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32802081/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com