[英]Difference between != and =! with an example(in C++)
!=
和=!
什么区别=!
在C ++中进行运算?
我尝试使用Google搜索来寻找答案,但似乎搜索引擎不会输入!=
或=!
类的文字=!
我也知道区别的逻辑是什么,但我想不出一个实际的例子。 我的意思是说我有2个参数A和B在什么条件下A =!B为真,但A!= B为假
if(A!=B) return true;
if(A=!B) return false;
我真的找不到任何搜索引擎的答案,而且似乎也没有在任何文档中提及它。
该操作:
A!=B
确定A
是否等于B
如果它们不相等,则评估为true
。 如果它们相等,则求值为false
。 这只是一个布尔比较操作。
该操作:
A=!B
不是布尔比较。 它设置的值A
到的否定值B
。 (在此上下文中使用时,它还会求值为A
的新值,但在这方面并不是真正的“比较”。)因此,如果B
为true
则它将A
的值设置为false
。 可以更清楚地看到:
A = !B
第一个操作仅进行比较 ,不做任何修改。 第二个操作修改 A
A!=B
表示“ A
不等于B
”。 A=!B
的意思是“指定的补B
到A
,并且产生的左值A
”。 可以(应该)将其重写为A = !B
或A = (!B)
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.