zoukankan      html  css  js  c++  java
  • IOS学习5-strong/weak/copy

    strong。weak,copy的详解

    对象使用strong,ui控件使用weak,字符串用copy

    现在使用ARC,ARC判断准则:只要没有强指针指向对象中,找个对象就会被销毁。

    1. Strong/weak

    默认情况下下是强指针 Person *person = [[Person alloc] init];

    弱指针使用_weak修饰

    对象使用strong,为了保证对象在属性也在。

    如果:对象中有个属性是_weak类型,那么可能该属性指向的对象已经被销毁,而引发问题。

    注意循环引用引发内存泄漏  Person{ Job} ---- Job{Person}

    两个对象循环引用必须有个是_weak

    -------------

    ios 5前

    assign=weak

    retain=strong

    --------------

    2. copy 复制 (深复制,浅复制)

    3. @property copyweakstrong etainassign

    * weak (assign): 代理/UI控件

    * strong (retain): 其他对象

    * copy: 字符串

    * assign : 非对象类型(基本数据类型,int,float,bool,枚举,结构体)

  • 相关阅读:
    微信分享
    angular 2
    angular 2
    angular 2
    angular 2
    ionic android升级检查
    ionic andorid apk 签名, 查看签名MD5
    微信支付 python版
    CSS3
    ionic 常见问题
  • 原文地址:https://www.cnblogs.com/pandans/p/4463553.html
Copyright © 2011-2022 走看看