1. 移位操作符“ << ”和“ >> ”拥有中等优先级:其优先级比算术操作符低,但比关系操作符、赋值操作符和条件操作符优先级高
2. *iter++
后自增操作的优先级高于解引用操作,因此 *iter++ 等效于 *(iter++),子表达式 iter++ 使iter加1,然后返回iter原值的副本作为该表达式的结果,因此解引用*的操作数是iter 未加1前的副本
3. 对数组做sizeof()操作等效于将其对元素类型做sizeof() 操作的结果乘上数组元素的个数
1 int sz = sizeof(ia) / sizeof(*ia); // 因为sizeof()返回整个数组在内存中的存储长度,所以用sizeof数组的结果除以sizeof其元素类型的结果,即可求出数组元素类型的个数
4. 删除指针后,该指针变为悬垂指针(dangling pointer)。 悬垂指针指向曾经存放对象的内存,但该对象已经不存在了
一旦删除了指针所指向的对象,立即将指针置为0,这样就非常清楚地表明指针不再指向任何对象
5. C++ 自动将枚举类型的对象或枚举成员转换为整型,其转换结果可用于任何要求使用整数值的地方
6. while 和 for 中定义的变量只能在其中使用