讀書筆記5 《crazy java》

2021-07-26 19:51:22 字數 699 閱讀 4061

switch語句表示式只能是如下5種資料型別:

1. byte

2. short

3. int

4. char

5. enum

使用if…else語句有一條基本的規則:總是優先把包含範圍小的條件放到前面處理。

對於if語句而言,如果緊跟該語句的是花括號括起來的語句塊,那麼該if語句將控制花括號括起來的語句塊,如果省略了if語句後條件執行體的花括號,那它僅僅控制到緊跟該語句的第乙個分號為止。

對於if、while、for語句後跟的是花括號括起來的語句塊,則控制的為該語句塊,否則語句的作用範圍只到該語句之後的第乙個分號之後結束。

省略花括號的原則:

大部分的時候,如果迴圈體只包含一條語句,那麼就可以省略迴圈體的花括號;但如果是迴圈體只包含一條區域性變數的定義語句,那依然不可以省略迴圈體的花括號。

for迴圈的初始化條件可以同時定義多個變數,但由於只能接受一條語句,因此這兩個變數的資料型別應該相同,只能用逗號作為分隔符。

使用foreach迴圈迭代陣列、集合時,迴圈計數器知識儲存了當前正在遍歷的陣列元素、集合元素的值、並不是陣列元素、集合元素本身,因此不要對foreach迴圈的迴圈計數器進行賦值。

讀書筆記 5

解碼gdi物件控制代碼 今天都是在探索gdi內部的結構,在微軟的文件中並沒有系統的記載,雖然我覺得很有道理,但到底是不是這樣只有微軟自己知道了 1 先看一下gdi控制代碼的定義,如hpen是這樣定義的 如果strict已經被定義了 struct hpen typedef struct hpen hp...

Effective C 讀書筆記 5

條款5 了解c 默默編寫並呼叫哪些函式 預設的函式包括 建構函式 copy建構函式 copy賦值運算子和析構函式,所有這些函式都是public且inline。這些函式僅當被呼叫的時候才會被編譯器建立出來。除非這個class的base class自身宣告有virtual析構函式,則這個class的析構...

《C Primer》讀書筆記 5

1.switch語句,有時我們可以故意不使用break語句,達到想要的效果。但是遇到這種情況最好要寫一段注釋,說明一下。正常情況下還是要寫break語句的,漏寫會引發很嚴重的後果。2.區域性靜態變數,在函式內部定義乙個static變數,函式終止之後,這個區域性的靜態變數仍然有效。靜態變數如果不初始化...