在objective-c中重写getter

时间:2017-05-31 12:53:31

标签: ios objective-c

我创建了属性@property (nonatomic) NSString *userPin;

我想为它重写getter和setter。我假设支持变量_userPin是自动生成的,但是当我尝试在getter中访问它时:

-(NSString*)userPin{

    /* Minutes */

    _userPin;
}

然而,编译器警告我未声明的标识符_userPin。为什么没有生成该变量?

1 个答案:

答案 0 :(得分:3)

从文档:“如果为readwrite属性实现getter和setter,或者为readonly属性实现getter,编译器将假定您正在控制属性实现并且不会合成实例自动变量。“

https://developer.apple.com/library/content/documentation/Cocoa/Conceptual/ProgrammingWithObjectiveC/EncapsulatingData/EncapsulatingData.html