OpCode.EvaluationStackDelta 属性
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
获取 IL 指令如何更改评估堆栈的值。
public:
property int EvaluationStackDelta { int get(); };
public int EvaluationStackDelta { get; }
member this.EvaluationStackDelta : int
Public ReadOnly Property EvaluationStackDelta As Integer
属性值
注解
从堆栈中弹出的元素数与 IL 指令导致推送到堆栈中的元素数之间的差异。
对于某些 IL 指令(如 Call 堆栈更改)不是固定的,具体取决于调用的引用签名。
对于此类 OpCodes,EvaluationStackDelta 返回 0。 在这种情况下,不应依赖
EvaluationStackDelta 用于计算堆栈大小和/或最大堆栈,而需要评估引用签名。
例如,如果指令调用方法引用,则需要评估方法签名;
推送计数取决于返回值,弹出计数取决于传递的参数数。