Re: [心得] 真的很討厭null已刪文

看板C_Sharp (C#)作者 (Neisseria)時間7年前 (2017/05/09 21:10), 7年前編輯推噓0(002)
留言2則, 2人參與, 最新討論串2/3 (看更多)
※ 引述《wind681201 (阿風~~)》之銘言: : null這個東西,真的是很討厭,雖然它叫做連空白也沒有。 : 但,沒有就沒有,幹麻報錯。 : 舉個例來說: : 我有一個 class 叫person ,裡面有人名,年紀二個欄位 : 若我查詢 人名叫josn 的就怎樣怎樣。 : 假設這個person是null : if(person.name == "josn"){怎樣。} : 就錯,為什麼不直接跳過去就好,因為我只是判別呀。 : 而非要寫成 : if(person != null && person.name == "josn"){怎樣。} : 就這樣,就要多幾個字,很討厭 : 由上面的例子,person 是null 那在person.name 當然就不可能為josn,就 : 跳過去就好,幹麻要報錯。 : 由其是dictionary物件,為了安全,非要一個containskey,先看有沒有再處理。 除了在電腦裡表示空指標外 有時候程式的邏輯也需要 null 狀態 [舉例不佳,已刪除] 就像前面網友講的 這是邏輯上的考量 對於 class 這種複合型別 用 null 會比用 dummy object 來得好 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 175.182.166.142 ※ 文章網址: https://www.ptt.cc/bbs/C_Sharp/M.1494335438.A.8EE.html ※ 編輯: Neisseria (175.182.166.142), 05/09/2017 21:11:06

05/09 23:04, , 1F
為什麼不是用List一開始只有一個元素?XD
05/09 23:04, 1F
感謝告知,已刪文 ※ 編輯: Neisseria (175.180.169.201), 05/10/2017 06:05:52

05/10 09:22, , 2F
struct是ValueType,不會等於null
05/10 09:22, 2F
我那時心裡大概想的是指向 struct 的指標 因為寫 C 或 Go 時,指向 struct 的指標很常用 感謝指正 ※ 編輯: Neisseria (203.71.94.20), 05/10/2017 09:57:09
文章代碼(AID): #1P4R_EZk (C_Sharp)
討論串 (同標題文章)
文章代碼(AID): #1P4R_EZk (C_Sharp)