代码之家  ›  专栏  ›  技术社区  ›  Elpezmuerto

中频块与开关盒块

  •  5
  • Elpezmuerto  · 技术社区  · 15 年前

    通常情况下,与开关盒块相比,使用带有许多其他ifs的if块之间是否存在性能差异?某些语言或样式惯例是喜欢一种语言还是另一种?

    具体来说,我对MATLAB、C和C++感到好奇。

    2 回复  |  直到 15 年前
        1
  •  3
  •   Michael Goldshteyn    15 年前

    在某些情况下,编译器可以将开关优化为查找表和分支。这可能比多个if/else if快得多。

        2
  •  1
  •   Lou Franco    15 年前

    在C语言中,优化器可以将一个开关转换为一个计算好的JMP,因此它可以更快。这是可能的,因为您总是打开一个整数常量。

    推荐文章