gpt4 book ai didi

rust - 是否有任何编译器标志来强制有符号整数溢出的未定义行为?

转载 作者:行者123 更新时间:2023-11-29 08:36:21 24 4
gpt4 key购买 nike

我正在编写一个需要超快的图形算法。是否有任何编译器标志来强制像 C 那样的有符号整数溢出的未定义行为?或者任何其他标志来强制更多未定义的行为?如果没有,是否有人对速度差异进行了基准测试?

最佳答案

与 C 相比,Rust 中的整数溢出永远不会触发未定义的行为。在 Debug模式下编译时,算术运算会检查溢出和 panic ,但在 Release模式下则不会检查。可以通过将标志 -C overflow-checks=yes 传递给 rustc 来控制该行为。

更一般地说,如果性能很重要,您应该确保使用发布版本。如果您只想针对特定的 CPU,可以使用 -C target-cpu=val,例如-C target-cpu=native 针对当前 CPU 进行优化。当然,您需要分析代码以确定要优化的内容。

关于rust - 是否有任何编译器标志来强制有符号整数溢出的未定义行为?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56052927/

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