结构结构的绑定声明,用于从元组继承的类 我有一个从标准元组继承的类: #include

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

线

auto& [ str_id, num_id ] = item;
我有错误类型'diendenifier'(又名'distendifier

,long long>')分解为1个元素,但是提供了2个名称

但元组变量的代码相同的代码ok

auto& [ str_t_id, num_t_id ] = tuple_id; 我该怎么做才能支持类标识符的结构化绑定?

尽管在类似元组的绑定协议上存在重叠的问题,但我看不到这一点的直接重复。
对于此情况(不是数组,不是简单的骨料:特别是情况2
HERE),

c++ tuples c++17
1个回答
0
投票
表达

std::tuple_size<E>::value

必须是形成良好的积分常数表达,

但不是。有定义的定义并不能帮助子类,因为隐式转换在这里不会发生。 您需要自己专业。
  • 对于每个结构化绑定,引入了“引用
    std::tuple_size<std::tuple<...>>
    ”的变量:...
您也需要专门研究这个问题。他们俩都可以转发到

std::tuple_element<I, E>::type

版本。
您的sulso
需要

    std::tuple
  • ,如果查找标识符在类成员访问查找的范围中的标识符查找至少一个声明...
  • e.get<I>()
get

,仅通过参数依赖性查找而忽略非ADL查找的位置。


但是在这里,我们终于让ADL为我们寻找正常

Eget<I>(e)

最新问题
© www.soinside.com 2019 - 2025. All rights reserved.