问题标签 [lvalue]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
4 回答
4222 浏览

perl - Perl 中左值子例程的用途是什么?

我不明白左值子例程的用途是什么?什么是我用普通子程序无法完成的?你能发布一些例子吗?

谢谢

0 投票
2 回答
3911 浏览

c++ - 为什么 C++0x 右值引用不是默认值?

即将推出的 C++ 标准 C++0x 的一个很酷的新特性是“右值引用”。右值引用类似于左值(普通)引用,除了它可以绑定到临时值(通常,临时只能绑定到const引用):

那么,他们为什么要发明一种全新的类型,而不是仅仅取消对普通引用的限制以允许它们绑定到临时对象?

0 投票
4 回答
6527 浏览

objective-c - 获取 Objective-c 属性的地址(这是一个 C 结构)

我有一个包含 C 样式结构的 Objective-C 类。我需要调用一个 C 函数,传递一个指向该对象成员(又名属性)的指针。对于我的生活,我无法弄清楚如何获取这个 C 结构的地址。使用传统&运算符获取地址,我得到一个 LValue 编译器错误。

以下代码导致编译器错误:

如何获得指向对象myStruct成员的指针myClass

0 投票
5 回答
4251 浏览

c++ - 将临时绑定到左值引用

我有以下代码

您可以看到我正在将three()传递给mutate方法。这段代码编译得很好。我的理解是,不能将临时对象分配给非常量引用。如果是,这个程序是如何编译的?

有什么想法吗?

编辑:

编译器尝试:VS 2008 和 VS2010 Beta

0 投票
11 回答
70476 浏览

c++ - “需要 l 值”错误

我们什么时候得到“需要左值”错误...在编译 C++ 程序时???(我正在使用 VC++)

0 投票
2 回答
1872 浏览

c++ - 将左值绑定到引用

我想我在这件事上的理论背景中错过了一些东西。我知道有类似的帖子,但我仍然不明白。

我有这样的代码:

编译器在这里给我一个错误:

[BCC32 错误] Unit1.cpp(830):E2357 引用初始化为“无符号短”,需要“字符”类型的左值

我发现这是因为 ANSI 2003 关于 C++ 处理临时和引用的规定,但我仍然不明白这里有什么问题。

当我进行 c 风格转换时:

它解决了一个问题。

谁能暗示我出了什么问题,为什么错了?

0 投票
3 回答
1586 浏览

c++ - C++中的左值substr方法

我想substr在我制作的字符串类中用 C++ 创建一个方法。

string 类当然是基于 C 风格的字符串,我负责内存管理。

我想编写一个substr(start, length)可以正常工作的函数:

而且也是这样:

请注意,即使我得到一个 3 个字符长的子字符串,我只输入了 2 个字符,输出字符串仍然是 HDDo。

知道如何完成这项工作吗?

谢谢!

0 投票
1 回答
717 浏览

javascript - 数组是 JavaScript ECMAScript 中的左值吗?

Firefox 3.5.3(至少)允许我编写如下代码:

在什么时候

这对于代码的清晰度非常有帮助。

这被认为是符合 ECMAScript 的吗?我没有在规范中看到任何内容,但 JSLint 返回错误。

0 投票
3 回答
12423 浏览

c - 文字字符串和函数返回值是左值还是右值?

  1. 只是想知道文字字符串是左值还是右值。其他文字(如 int、float、char 等)是左值还是右值?

  2. 函数的返回值是左值还是右值?

你怎么区分?

0 投票
2 回答
4018 浏览

objective-c - “LValue”不是我认为的意思吗?

在以下代码中:

我收到错误:

请注意,我在 & 行之前直接使用这些变量作为左值...

在我没有错误地分配给它之后,它怎么能抱怨一个值不是左值?这是否与目标 C 创建的神奇 getter/setter 有关?

我想我需要解释一些上下文来解释我为什么要获取地址:

在我之前的 SO 帖子中,我展示了相同的代码,打印 %d 并发现在分配之后,由于某种原因,属性仍然为 0。所以,我想我会尝试获取属性的地址以查看它们的存储位置,也许我可以弄清楚为什么我没有成功分配给它们,然后就发生了这种情况。

我认为正如人们提到的那样,是的,可能是当我进行分配时,obj-c 会秘密地用调用 setter 代替它(然后是其他一些魔法,因为在另一篇 SO 帖子中,其他人提到了

失败,但是

工作正常。