有没有办法通过其成员名称索引 hana 改编结构?

is there any way to index the hana adapted struct by its member name?

我有一个 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") 和 return john Dow

通过滚动浏览 Hana 文档示例,我发现以下内容可能对您有用:

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

原来有at_key。我们可以使用 hana::at_key(obj, key)