#include <iostream>
int&& func() {return 7;}
int main() {
std::cout << &func();
}
即使使用return std::move(7)
,也会产生错误。就是说func()是一个右值(好像我在做&7)。
这是说func()是一个右值
嗯,它是一个右值。
(好像我在做&7)。
至少在您无法在右值上使用&7
的意义上,就好像您正在执行&
一样。实际上,您正在尝试使用对临时int
(从文字上初始化)的悬挂引用作为左值。
此代码没有意义。我不知道您要做什么,但您做不到。