gpt4 book ai didi

c++ - 许多情况下的开关优化保证任何情况下均等的访问时间? ( C++ )

转载 作者:可可西里 更新时间:2023-11-01 17:11:06 28 4
gpt4 key购买 nike

我在这里看到了针对特定语言的答案,关于超过 5 种情况的开关使用跳转表进行了优化,以保证任何情况下的恒定访问时间。
C/C++ 也是这样吗?
它特别适用于 gcc 吗?用于 Visual Studio ?
如果不是,按发生频率的顺序对案例进行排序会有帮助吗?

最佳答案

标准不保证 switch 语句将如何实现。我从未见过编译器生成哈希表,尽管有相当一部分会生成跳转表。除非我的内存力比平时更差,否则 VS 和 gcc 都可以在案例足够密集时生成跳转表(对于“足够”的不同值)。不幸的是,几乎不可能说(甚至不一定弄清楚)按出现频率排序何时会有帮助——不仅在编译器之间不同,甚至在同一编译器的不同版本之间也是不同的。

关于c++ - 许多情况下的开关优化保证任何情况下均等的访问时间? ( C++ ),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2129718/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com