【问题标题】:Creating a hana::set from template parameter pack从模板参数包创建一个hana::set
【发布时间】:2017-05-31 16:20:37
【问题描述】:

我正在努力弄清楚如何从模板参数包中制作 hana::set。我有一个用于元组 (tuple_t) 的方法,但它似乎创建了一个我必须使用 make_set 的集合。这是我卡住的地方:

template<typename ...Ts>
class Foo
{
public:
    static constexpr auto asTuple = hana::tuple_t<Ts...>;
    static constexpr auto asSet = hana::make_set(/*what goes here?*/);
};

谢谢

【问题讨论】:

  • hana::type_c&lt;Ts&gt;...?只是猜测。
  • @BartekBanachewicz 这似乎成功了。如果你把它作为一个答案,我会接受它。谢谢。

标签: c++ boost-hana


【解决方案1】:

您必须使用 hana::type_c 助手扩展类型:

static constexpr auto asSet = hana::make_set(hana::type_c<Ts>...);

"Live" on Coliru

【讨论】:

  • 另外,如果你拥有的是一个序列(不是一个包),你可以使用hana::unpack(sequence, hana::make_set)
猜你喜欢
  • 1970-01-01
  • 2022-01-08
  • 2021-04-01
  • 1970-01-01
  • 1970-01-01
  • 2021-02-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多