gpt4 book ai didi

c++ - C++ 中的 C 风格转换和可读性

转载 作者:可可西里 更新时间:2023-11-01 15:38:21 24 4
gpt4 key购买 nike

是的,我知道你不应该在 C++ 中使用 C 风格的强制转换,但在某些情况下,我真的认为如果你这样做会更具可读性,例如比较这两个:

d = ((double)i * 23.54) / (d + (double)j);

d = (static_cast<double>(i) * 23.54) / (d + static_cast<double>(j));

哪个更具可读性?

现在开始我的主要问题。显然我更喜欢上面的那个,但我认为有一种方法可以让它更具可读性:

d = (double(i) * 23.54) / (d + double(j));

我的问题是,这会降低效率吗?在这种情况下,编译器是否会创建比使用其他方法转换时更多的 double ,还是它足够聪明而不这样做?这比典型的 C 风格转换更糟还是更糟?

最佳答案

它们都是不可读的。你应该写:

d = (i * 23.54) / (d + j);

关于c++ - C++ 中的 C 风格转换和可读性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4399700/

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