gpt4 book ai didi

c++ - 编译器会自动优化重复代码吗?

转载 作者:搜寻专家 更新时间:2023-10-31 01:31:35 26 4
gpt4 key购买 nike

如果我有一些重复多次的简单算术代码。编译器会自动优化吗?

这里是例子:

someArray[index + 1] = 5;
otherArray[index + 1] = 7;

从性能的角度(而不是从良好的可读性和可维护代码的角度)引入变量 nextIndex = index + 1 是否有意义,或者编译器将进行此类优化自动?

最佳答案

你不应该担心像这样微不足道的优化,因为几乎所有编译器都会持续 10-15 年或更长时间。

但是如果您的代码中有一个非常关键的地方并且想要获得最大的运行速度,那么您可以检查为这些行生成的汇编代码以确保编译器进行了这种微不足道的优化。

在某些情况下,与保存在寄存器或内存中相比,更多的算术加法可能是更快的代码版本,编译器知道这一点。如果您尝试手动优化琐碎的案例,您的代码可能会变慢。

您还可以使用在线服务,例如 https://gcc.godbolt.org用于检查生成的代码(支持多个版本的 gcc、clang、icc)。

关于c++ - 编译器会自动优化重复代码吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45483248/

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