我今天正在开发一个程序,并且遇到了这个奇怪的bug。我有一个分配了操作的UIButton。该行动是这样的:Obj-C中[object variable]和object.variable之间的区别?
-(void) someaction:(id) e
{
if ([e tag]==SOMETAG)
{
//dostuff
}
}
什么让我困惑的是,当我第一次写吧,如果线是
if (e.tag==SOMETAG)
的XCode拒绝编译它,说
error: request for member 'tag' in 'e', which is of non-class type 'objc_object*'
但我认为这两者是相同的。
那么在什么情况下他们不一样?
我是一个objective-c noob ...很好的问题。 – codemonkey 2010-06-10 23:46:05