代码之家  ›  专栏  ›  技术社区  ›  T. Stone

MSIL中短路评估是如何工作的

  •  0
  • T. Stone  · 技术社区  · 14 年前

    在msil解释器中短路评估是如何工作的?And指令是否包含有关在false时跳转到何处的信息,对于Or指令是否包含与true相同的信息?

    1 回复  |  直到 14 年前
        1
  •  3
  •   kvb    14 年前

    否—And和Or的IL指令实际上对堆栈上的前两个操作数执行位运算。如果一个高级语言使用短路求值,它将被编译成IL级别的显式分支操作,而完全不依赖and指令。使用像Reflector这样的工具来查看有问题的编译器生成的实际IL。