gpt4 book ai didi

c++ - (4 > y > 1) 是 C++ 中的有效语句吗?如果是,你如何评价?

转载 作者:IT老高 更新时间:2023-10-28 23:09:32 29 4
gpt4 key购买 nike

这是一个有效的表达方式吗?如果是这样,您可以重写它以使其更有意义吗?比如和(4 > y && y > 1)一样吗?您如何评估链式逻辑运算符?

最佳答案

声明(4 > y > 1)被解析为:

((4 > y) > 1)

比较运算符 <> evaluate left-to-right .

4 > y返回 01就看真假了。

然后将结果与1进行比较。

在这种情况下,由于 01永远不会超过 1整个语句将始终返回 false


不过有一个异常(exception):

如果 y是一个类,>运算符已被重载以执行不寻常的操作。然后一切顺利。

例如,这将无法编译:

class mytype{
};

mytype operator>(int x,const mytype &y){
return mytype();
}

int main(){

mytype y;

cout << (4 > y > 1) << endl;

return 0;
}

关于c++ - (4 > y > 1) 是 C++ 中的有效语句吗?如果是,你如何评价?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8889522/

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