6

我很确定整数、字符、布尔和浮点文字的值类别是纯右值。

用户定义的文字类似于函数调用,因此它们的值类别取决于它们解析为的运算符函数的返回类型。

我不清楚字符串文字。它们的类型为“const charx 数组”,其中 charx 是某种字符类型。

它在 3.10 中说:

文字 ... 的值也是纯右值。

但我认为这可能不适用于字符串文字?

字符串文字的值类别是什么?你是怎么确定的?

4

1 回答 1

15

所以我很确定整数、字符、布尔和浮点文字的值类别是纯右值。

这是正确的。

字符串文字的值类别是什么?

根据 C++11 标准的第 5.1.1/1 段:

文字是主要的表达方式。它的类型取决于它的形式(2.14)。字符串文字是左值;所有其他文字都是纯右值。

于 2013-02-23T02:21:02.153 回答