这不是Rvalue reference to lvalue reference
的副本因为我要求这个用于C ++ 17:由于悬空引用,以下是否仍会调用未定义的行为(如果使用了引用)?
template <typename T>
constexpr T& to_lvalue(T&& r) noexcept { return r; }
int main()
{
int ten = 10;
int& ref = to_lvalue(ten+8);
// Is ref a dangling reference in C++17?
}
答案 0 :(得分:2)
是的,参考悬挂。有人谈到可能会将生命延长系统扩展到其他一些案例,但AFAIK实际上并没有为C ++ 17做任何事情。