ios obj.var = exp VS [obj var:exp]
为什么/什么时候使用其中一种而不是另一种?我刚刚遇到一个问题,使用其中一个时收到警告,而使用另一个时没有警告。
示例:
tableView.tableHeaderView = label; // worked
[tableView tableHeaderView:label]; // did not work - "instance method '-tableHeaderView:' not found (return type defaults to 'id')"
困惑
Why/When do you use one over the other? I just ran into an issue where I got a warning using one and no warning when using the other.
example:
tableView.tableHeaderView = label; // worked
[tableView tableHeaderView:label]; // did not work - "instance method '-tableHeaderView:' not found (return type defaults to 'id')"
confused
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
setter 通常以
set
为前缀。试试这个:也就是说,
将 this:转换为:
使用点表示法时,编译器会自动
。当声明 objc 属性时,此约定也适用于 setter 的声明属性名称(同样,默认情况下)。
Getter 不使用此约定,它们的选择器与声明的属性名称相同(默认情况下):
等于:
setters are generally prefixed with
set
. Try this instead:That is to say, this:
is converted to:
automatically by the compiler when using dot notation.
When declaring an objc property, this convention is also applied to the declared property name for the setter (again, by default).
Getters don't use this convention, Their selectors are the same (by default) as the declared property name:
is equal to: