在 Objective-C 中,“(UIButton *)sender”是什么意思,为什么不是“UIButton *sender”?或者一些 NSObject 代替 UIButton。这更多是关于星号优先级的问题...
- (IBAction)digitPressed:(UIButton *)sender {
//...
}
最佳答案
在这种情况下,这与优先级无关。括号不是强制转换。
这是 ObjC 中用于方法声明的语法,它表示名为 sender
的参数的类型为 UIButton *
。
星号与 UIButton 一起出现,因为它们共同命名了参数的类型。在这种情况下,由于它是来自按钮的操作方法,因此您使用的是 UIButton*。当然,在一般情况下,方法可以有任何类型的参数,只要调用者正确调用它即可。 :)
关于objective-c - 为什么是 "(UIButton *)sender"而不是 "UIButton *sender"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9203718/