看板 MacDev 關於我們 聯絡資訊
delegate是這樣宣告 @interface ClassName : NSObject { id delegate; } outlet是這樣 #ifndef IBOutlet #define IBOutlet #endif @interface className { IBOutlet id outlet; } 所以等於 跟delegate一樣 所以我可以說,其實他們都只是讓別的物件可以使用某個變數 (id) 的東西而已嗎... 感覺沒什麼差別... 當然意義上有所不同,可是你要把程式反過來寫應該也可以吧? 例如把delegate的名字改掉,或是建立一個outlet叫做delegate? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.123.102.254
jlovet:是不是很像C++的reference阿? 09/18 11:16
uranusjr:名字只是名字而已, 你要把你家前面的野貓命名傑士塔威也 09/18 11:20
uranusjr:沒人管得了你 09/18 11:20
uranusjr:Outlet 之所以是 outlet 是因為前面有個 IBOutlet, 而 09/18 11:21
uranusjr:delegate 更是只要是個 NSObject(讀音:什麼都可以)就 09/18 11:21
uranusjr:能當 (btw, "id" works the same as "NSObject" here) 09/18 11:22
jlovet:嗯,對阿,我是說, IBOutlet 根本就空空的.... 09/18 11:46
jlovet:ObjC真的可以用中文命名嗎? 傑士塔威~ 09/18 11:46
uranusjr:呃, 我只是解釋...不管能不能不要用非英語字元總是較好 09/18 11:55
ccpz:IBOutlet 只是給 interface builder 看的, 你加上IBOutlet 09/18 12:29
ccpz:他就會在 outlet 的列表出現讓你拉 09/18 12:29
jlovet:喔喔喔喔喔,原來是這樣阿,難怪程式碼裡面都沒有outlet的線 09/18 12:51