Chapter4,Section4.3——Logical and Relational Operators
逻辑和算术运算符
1.关系运算符的操作数类型是算术类型的或者指针类型的。
2.逻辑运算符的操作数类型是任意可以转换为布尔类型的类型。
3.这两个运算符返回的都是布尔类型。
4.算术类型或布尔类型的操作数,值为0时是false,其它的值都是true。这两个运算符的操作数都是右值,并且结果也是右值。
运算符:
1. ! < <= > >= == != && ||
只有!是右结合,其它均为左结合。
2.此处的逻辑与和逻辑或都是短路运算符。
当&&运算符的左边是true时,它的右边才会被计算。
当||运算符的左边是false时,它的右边才会被计算。
3.当遍历一个很大的集合时,可以定义一个“引用”变量,这样就可以避免复制每一个元素。
4.关系运算符是左结合的,返回bool值。当把关系运算符穿成一个链时会产生惊奇的效果。
例:if(i<j<k) //此处与k进行比较的是i<j的布尔返回值,当k大于1的时候返回值为true。
5.当布尔类型转化为其它的算术类型时。false转换为0,true转换为1。
6.通常最好不要在比较中使用literal中的true或false作为操作数,它们通常只能用来与bool类型的对象进行比较。