首页 >后端开发 >C++ >C 中的短路评估:与 Java 中一样可靠吗?

C 中的短路评估:与 Java 中一样可靠吗?

Susan Sarandon
Susan Sarandon原创
2024-11-10 04:41:02216浏览

Short Circuit Evaluation in C  : Is It as Reliable as in Java?

C 中的短路求值:是否像 Java 中一样有保证?

在 Java 中,短路求值机制确保表达式从左到右顺序评估,一旦遇到错误值就停止。这种行为可以有效地利用条件,例如:

if (a != null && a.fun());

C 可以提供相同的保证吗?

在 C 中,短路评估也用于内置数据类型和运算符。但是,保证与 Java 不同。

if (a != 0 && a->fun());

这里,a != 0 计算结果为 true 或 false,仅当 计算结果为 true 时,才是 a->fun () 执行。这种有保证的行为仅适用于内置类型。

重载 & 和 ||在 C

C 中的自定义类型可以重载 && 和 ||运营商。发生这种情况时,不能保证短路评估。因此,通常不鼓励为自定义类型重载这些运算符。

以上是C 中的短路评估:与 Java 中一样可靠吗?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn