作者jlovet (打不赢怪兵器不好)
看板MacDev
标题[讨论] outlet跟delegate
时间Fri Sep 18 11:14:35 2009
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
1F:→ jlovet:是不是很像C++的reference阿? 09/18 11:16
2F:→ uranusjr:名字只是名字而已, 你要把你家前面的野猫命名杰士塔威也 09/18 11:20
3F:→ uranusjr:没人管得了你 09/18 11:20
4F:→ uranusjr:Outlet 之所以是 outlet 是因为前面有个 IBOutlet, 而 09/18 11:21
5F:→ uranusjr:delegate 更是只要是个 NSObject(读音:什麽都可以)就 09/18 11:21
6F:→ uranusjr:能当 (btw, "id" works the same as "NSObject" here) 09/18 11:22
7F:→ jlovet:嗯,对阿,我是说, IBOutlet 根本就空空的.... 09/18 11:46
8F:→ jlovet:ObjC真的可以用中文命名吗? 杰士塔威~ 09/18 11:46
9F:→ uranusjr:呃, 我只是解释...不管能不能不要用非英语字元总是较好 09/18 11:55
10F:推 ccpz:IBOutlet 只是给 interface builder 看的, 你加上IBOutlet 09/18 12:29
11F:→ ccpz:他就会在 outlet 的列表出现让你拉 09/18 12:29
12F:→ jlovet:喔喔喔喔喔,原来是这样阿,难怪程式码里面都没有outlet的线 09/18 12:51