美文网首页
IOS中成员变量的定义

IOS中成员变量的定义

作者: 飞飞超人 | 来源:发表于2019-03-13 09:32 被阅读0次

    IOS中定义成员变量有两种方法,一种是将变量声明为property,一种是直接声明为一个变量。

    方法一:
     @property (strong,nonatomic) NSString* testString;
    
    方法二:
     @implementation TestCell
    {
    ​    NSString* _testString;
    }
    
    

    使用方法一的时候系统会为我们自动生成一个Get函数和一个Set函数(隐式的),可以显示的在对应的类中声明这两个函数,Get一般用来懒加载使用,Set一般实现这个属性变化的时候需要影响的变化。其中使用self.testString会调用相应的get和set方法,_testString只会直接修改属性本身。

    需要注意的是:self.testString = xxx,会调用它的set方法,所以不能在他的set方法中调用这个函数,会死循环;set中需要手动调用_testString来修改这个属性的值。

    方法二就是一个变量值的直接修改,没什么好说的。

    额外两个需要注意的地方:

    能不使用.赋值就不使用,直接访问变量存取效率会高一些,没必要去调用它的set和get方法

    如果要使用kvo属性必须要使用.赋值,因为kvo实际是拦截了set方法

    相关文章

      网友评论

          本文标题:IOS中成员变量的定义

          本文链接:https://www.haomeiwen.com/subject/wgnapqtx.html