stdapply

循环通用引用(auto&;&;)到元组的基于范围的引用语义

为什么在以下代码中edges被解释为对for中元组的引用:我知道在元组上调用.begin()是无效的。我知道autol=[&]{for{/*...*/}};l;是有效的,可能会提供我想要的东西。但我的问题是,为什么我对edges的迭代返回引用而不是值。我从相应的错误中了解到:没有用于调用“begin”的匹配函数我的最低理解水平要求将auto&&转换为auto应该编译,但事实并非如此。我还尝试使用std::apply;代替for循环,但无法提取i和j。