2015-03-19 43 views
-2

objc's ->代表什么?
与点链有什么不同吗?
例如self.delegateself->delegate什么是objc的 - >?

+1

点语法将通过objc getter,该箭头语法用于简单访问原始ivar – SomeGuy 2015-03-19 01:09:30

+1

在处理Objective-C之前,您应该了解C/C++。 – 2015-03-19 01:35:00

回答

2

->在Objective-C是一样的->中C.它是允许取消引用指针(相对于点.操作者,这需要一个结构)的字段访问运算符。

Objective-C中引起混淆的是指针访问属性的点语法。所以规则选择一个点与->变得有点混乱:

  • 使用点.对Objective-C的对象,它们总是通过指针访问的访问Objective-C的性能
  • 使用箭头->访问Objective-C对象上的Objective-C实例变量以及通过指针访问C结构上的字段
  • 使用点.访问C结构上的字段。