OC点和右箭头访问变量的区别

2019-11-30  本文已影响0人  一叶知秋0830

.语法

OC中.语法实际上就是方法调用,比如通过self.deviceID访问属性,如果它出现在=的左边那么就是调用属性的setter方法,如果出现在=右边就是调用属性的getter方法。
所以如下所示的定义:

self.deviceID = @"123";[self setDeviceID:@"123"];是等价的。

NSString *str = self.deviceID;NSString *str = [self deviceID];是等价的。

->语法

OC中->用于访问成员变量。所以:

self->_deviceID_deviceID是等价的。

self->deviceTypedeviceType是等价的。

@interface Device : NSObject
{
    @public NSString *deviceType;
}

@property (nonatomic , strong) NSString *deviceID;

@end
上一篇下一篇

猜你喜欢

热点阅读