Method() == OK ){ // stuff } 在-6ren">
gpt4 book ai didi

c++ - "boolean short circuiting"是由标准规定的还是仅用作优化?

转载 作者:太空狗 更新时间:2023-10-29 19:37:47 24 4
gpt4 key购买 nike

<分区>

考虑一下

Class* p = NULL;
if( p != NULL && p->Method() == OK ){

// stuff
}

在我使用过的所有编译器上,这是非常安全的。 IE。 bool 表达式的第一部分将计算为 false,因此不会尝试调用 Method(),因为计算第二部分是多余的。

这是因为大多数编译器会优化第二部分的计算,还是 C/C++ 标准规定的行为?

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