有人知道使用 ldloc var
CIL 指令和 ldloc.n
是否存在哪怕很小的差异吗?
在方法范围内考虑这个本地变量表:
.locals init ([0] int32 a,
[1] int32 b)
这些说明是:
ldloc.0
ldloc.1
更好、最差或等于:
ldloc a
ldloc b
最佳答案
常见操作码有许多缩短形式,其目标很简单 - 缩短方法的长度。 ldloc.<em>n</em>
指令占用一个字节,ldloc.s <em>n</em>
两个字节,和 ldloc <em>n</em>
三个字节。这对于内联很有用,因为长度超过 16 字节的方法不适合内联。
关于cil - ldloc 变量与 ldloc.n,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22785888/