问题标签 [variable-assignment]

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 投票
3 回答
5275 浏览

objective-c - 将文字字符串分配给带有“=”的 NSString 实际上有什么作用?

以下行实际上是做什么的?

假设在标题中声明了“字符串”:

“=”在这里实际上做了什么?它对“字符串”的引用计数有什么作用?特别是,假设由于某种原因没有分配“字符串”,是否需要释放它?

谢谢!

0 投票
5 回答
6315 浏览

java - java中a + = 10和a = a + 10之间的区别?

两者是否相同a += 10a = a + 10或者它们之间有什么区别?我在学习 Java 作业时遇到了这个问题。

0 投票
3 回答
523 浏览

delphi - 在 Delphi 中检索返回值是否有任何优化?

我试图找到一种优雅的方法来访问我的程序的其他部分中的某些对象的字段,方法是使用存储字节的记录并通过使用同名的函数访问另一条记录的字段作为记录的字段。

现在,我试图通过重载转换运算符来使我的生活更轻松,这样当我尝试将一个字节分配给 TAilmentP 对象时,它会将其分配给 Ordinal 字段。但是,正如我检查过的,似乎这种尝试在性能方面实际上代价高昂,因为对隐式“操作员”的任何调用都会为返回值创建一个新的 TAilmentP 对象,执行其业务,然后返回值和由于地址不同,因此按字节复制回调用它的对象。

老实说,我的代码经常调用这个方法,而且这似乎比直接将我的值直接分配给我的对象的 Ordinal 字段要慢。

有没有办法让我的程序通过使用任何方法/函数将值直接分配给我的字段?即使内联似乎也不起作用。有没有办法返回对(记录)变量的引用,而不是对象本身?最后(很抱歉有点跑题了),为什么运算符重载是通过静态函数完成的?由于您可以访问对象字段而无需取消引用它们,因此使它们成为实例方法不会使其更快吗?这在这里和我的代码的其他部分真的会派上用场。

[编辑] 这是隐式运算符的汇编代码,具有所有优化且没有调试功能(甚至不是断点的“调试信息”)。

更有趣的是,下一个函数在启动时有一个 mov eax, eax 指令。现在看起来真的很有用。:P 哦,是的,我的隐式运算符也没有内联。

我非常确信 [esp] 是 Result 变量,因为它的地址与我分配的地址不同。在关闭优化的情况下,[esp] 被 [ebp-$01](我分配给的)和 [ebp-$02](字节参数)替换,再添加一条指令将 [ebp-$02] 移动到 AL(然后把它放在 [ebp-$01]) 中,冗余的 mov 指令仍然存在于 [epb-$02] 中。

我做错了什么,还是 Delphi 没有返回值优化?

0 投票
12 回答
381411 浏览

javascript - JavaScript OR (||) 变量赋值说明

鉴于这段 JavaScript...

有人可以向我解释一下这种技术叫什么(我最好的猜测是这个问题的标题!)?以及它是如何/为什么起作用的?

我的理解是,变量f将被分配为第一个变量的最接近的值(从左到右),该变量的值不是空值或未定义,但我没有设法找到关于这种技术的很多参考资料并且有看到它用了很多。

另外,这种技术是 JavaScript 特有的吗?我知道在 PHP 中做类似的事情会产生f一个真正的布尔值,而不是d它本身的值。

0 投票
1 回答
390 浏览

c - 程序在结构成员分配上停止而没有错误

我有一个函数,它接受指向结构的指针并将该结构的成员设置为特定值。但是,在执行该分配代码之后,我的程序退出而没有显示任何错误。

我是 C 的新手,任何帮助将不胜感激。

0 投票
1 回答
105 浏览

variable-assignment - #geplant 在作业中的含义/用途是什么?

我刚从 X++(Java 背景)开始,我发现了类似的代码

order是带有Status列的表的记录。

#USRBatchScheduling我的问题: and的含义是什么#geplant(“geplant”在德语中是“计划的”)以及最终在哪里可以找到它的定义。
我想它是某种常量,但无法#在 X++ 参考(关键字)中找到。

0 投票
6 回答
1085 浏览

c# - C# 自动引用分配 - 使引用为空

Unity3D 中的 C# 脚本环境(在 Mono 下运行)在销毁对象时具有良好的行为。所有指向被破坏对象的引用都会自动变为 null :

输出 :

关于如何实现这一目标的任何想法?

谢谢

0 投票
3 回答
904 浏览

c++ - 信任返回值优化

您如何使用返回值优化
在任何情况下,我可以信任现代编译器来使用优化,还是应该始终以安全的方式返回某种类型的指针/使用引用作为参数?

是否存在无法进行返回值优化的已知情况?在我看来,编译器执行返回值优化相当容易。

0 投票
3 回答
4389 浏览

c++ - 从另一个程序分配一个特定的内存地址,并改变它的值

最近我放学了几天,想用 C++ 做一个处理内存地址的小程序实验。

我想看到的是,如果一个当前正在运行的程序(我们称之为程序 A)在堆中创建了一个指向 int 对象的指针,是否可以被另一个程序看到并被修改(程序 B)。

所以对于程序 A,这是我的基本代码:

程序 A 的输出:

对于程序 B,我查看了如何通过此链接分配特定的内存地址:http: //www.devx.com/tips/Tip/14104

程序 B 的代码是:

程序 B 的输出:

我不太明白。我期待 15 的显示*p,但它做了我没想到的事情。

我也尝试分配*p一个类似的数字,*p = 2000但是当我尝试这样做时它也崩溃了。

此外,当我显示指针和程序 A ( cout << &pint;) 和程序 B ( cout << &p;) 的地址时,它们都显示了相同的内存地址。

有谁知道到底发生了什么?我很感兴趣,但对正在发生的事情感到困惑。另外,我可以做我在 C++/C 中尝试的事情吗?

** 编辑 ** 抱歉没有提及我的平台,但我目前使用的是 Window 7 Professional

0 投票
2 回答
2393 浏览

variable-assignment - 在嵌套的模块集中分配电线

我有一条大约 4 层深的电线,我真的不希望不得不将它向上传播的麻烦。有没有办法使用某种引用来分配电线?我知道我可以通过键入以下内容来访问电线:

不工作

任何人都知道有什么办法吗?