Re: [問題] this 在什麼情況下會等於NULL??
※ 引述《yoco315 (眠月)》之銘言:
: ※ 引述《bgcrwf (老王)》之銘言:
: : 最近在看程式碼的時候 有看到一段搞不懂
: : if (this) {
: : // blah....
: : } else {
: : // blah....
: : }
: : 想請教各位
: : 在什麼情況下程式會進到else這個區塊來呢??
: : 想很久想不出來
: : 謝謝
: 像這樣的情況就會是哩:
: A *a = NULL ;
: a->f() ;
: 這樣 a::f() 裡面拿到的 this 就是 NULL。
: 會這樣設計的原因,
: 可以參考一個叫做 "Null Pointer(Object) Pattern" 的手法。
就[Refactoring]這本書裡提及的Null Object Pattern
感覺和你提到的目的相反耶
Null Object就是不想"一直檢查是否為null"
才會創造一個虛無的object出來
還是說我有哪個地方誤會了?
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 203.70.99.205
※ 編輯: elefant 來自: 203.70.99.205 (03/28 23:18)
→
03/28 23:38, , 1F
03/28 23:38, 1F
推
03/29 01:18, , 2F
03/29 01:18, 2F
→
03/29 01:18, , 3F
03/29 01:18, 3F
→
03/29 09:47, , 4F
03/29 09:47, 4F
→
03/29 09:48, , 5F
03/29 09:48, 5F
→
03/29 09:49, , 6F
03/29 09:49, 6F
推
03/30 03:11, , 7F
03/30 03:11, 7F
→
03/30 03:11, , 8F
03/30 03:11, 8F
推
03/30 12:55, , 9F
03/30 12:55, 9F
→
03/30 12:56, , 10F
03/30 12:56, 10F
→
03/30 12:57, , 11F
03/30 12:57, 11F
推
03/31 04:18, , 12F
03/31 04:18, 12F
→
03/31 04:18, , 13F
03/31 04:18, 13F
討論串 (同標題文章)