第四章:表達式
1. 在實際情況下,子表達式的計算順序通常是初學者出錯的根源,因此在你記不住某些操作符的計算順序時,加括號明確指定計算順序。
2. 只要能夠得到表達式的值true 或false 運算就會結束,給定以下形式
expr1 && expr2
expr1 || expr2
如果下列條件有一個滿足
在邏輯與表達式中expr1 的計算結果為false
在邏輯或表達式中expr1 的計算結果為true
則保證不會計算expr2
3. 逗號表達式是一系列由逗號分開的表達式,這些表達式從左向右計算,逗號表達式的結果是最右邊表達式的值。
4. 操作符的優先級和結合性(當然你也可以查書確認,但是既然你都記不住,我想大部分也是記不住的),如第一點所說,加括號來明確計算順序。
5. 類型轉換:
l 隱式類型轉:C++定義了一組內置類型對象之間的標准轉換在必要時它們被編譯器隱式地應用到對象上。
l 算術轉換:算術轉換保證了二元操作符如加法或乘法的兩個操作數被提升為共同的類型,然後再用它表示結果的類型。兩個通用的指導原則如下:
1 為防止精度損,失如果必要的話類型總是被提升為較寬的類型
2 所有含有小於整型的有序類型的算術表達式在計算之前,其類型都會被轉換成整型
l 顯示轉換:強制類型轉化(cast)