文章目录
一、左值、右值与将亡值
1、左值 (lvalue)
- 是什么:能取地址、有名字的值(比如变量)。
- 特点:可以放在等号左边(比如
a = 10)。 - 例子:
int a = 10; // a是左值
2、右值 (rvalue)
- 是什么:临时值,不能取地址(比如字面量、临时结果)。
- 特点:只能放在等号右边(比如
10 = a是错的)。 - 例子:
int b = 20; // 20是右值 int c = a + b; // (a + b)的结果是右值
3、将亡值 (xvalue)
- 是什么:介于左值和右值之间,通常是“即将被移动”的值。
- 特点:可以被右值引用绑定,资源会被“偷走”(移动语义)。
- 例子:
std::string s1 = "Hello"; std::string s2 = std::move

最低0.47元/天 解锁文章
1万+

被折叠的 条评论
为什么被折叠?



