如果您正在编写程序集,那么将值分配给哪个寄存器重要吗?假设您将累积/中间值存储在 %ebx 而不是 %eax 中,后者传统上用于此目的。这是不好的做法吗?会影响性能吗?
换句话说,您是否可以将它们等同于存储空间,还是应该坚持将它们用于特定目的?
我的理解方式是,“变量”一词指的是重新分配引用的能力。“常量”意味着不能重新分配引用。Java中final和not的本质区别。
var something = new obj() -> reference can be re-assigned
val something = new obj() -> cannot be re-assigned
Run Code Online (Sandbox Code Playgroud)
对我来说,“可变性”意味着修改 REFERAND/OBJECT 本身的能力,而不是修改它的引用。IE被引用的对象。但 Kotlin 并不能阻止这种情况。
你可以有
val something = new obj()
Run Code Online (Sandbox Code Playgroud)
但仍然能够“改变” obj() 而无需重新分配给新的标识符。
我是否误解了什么,或者这是用词不当?