有什么办法可以通过成员名来索引hana适配结构?

问题描述 投票:0回答:1

我有一个hana定义的结构,我知道我可以通过它进行迭代,但我想知道如何通过成员名来索引它?

#include <string>
#include <boost/hana.hpp>
int main()
{
    struct Person {
        BOOST_HANA_DEFINE_STRUCT(Person,
            (std::string, name),
            (int, age)
        );
    };
    Person john{"john Dow", 30};

    return 0;
}

有没有什么hana工具允许我这样做?get(john, "name") 并返回 john Dow?

c++ boost hana
1个回答
1
投票

通过翻阅Hana文档中的例子,我发现下面的内容可能对你有用。

hana::find(john, BOOST_HANA_STRING("name"))

0
投票

原来是这样的 钥匙我们可以用 hana::at_key(obj, key)

© www.soinside.com 2019 - 2024. All rights reserved.