zoukankan      html  css  js  c++  java
  • ARC

    ARC的判断准则:只要没有强指针指向对象,就会释放对象。

    1、ARC特点:
    1>不允许调用release、retain、retainCount
    2>允许重写dealloc,但是不允许调用[super dealloc]
    3>@property的参数
    • strong:成员变量是强指真(适用于OC对象类型)
    • weak:成员变量是弱指针(适用于OC对象类型)
    • assign:适用于非OC对象类型
    4>以前的retain、copy改为用strong
     
    指针分2种:
    1>强指针:默认情况下,所有指针都是强指针__strong
    2>弱指针:__weak
    注意:均为双下划线
    // 错误写法(没有意义的写法)
    __weak Person *p = [[Person alloc] init];

    注意:
     当两端循环引用的时候,解决方案:
     
    1> ARC
     1端用strong,另1端用weak
     2> 非ARC
     1端用retain,另1端用assign


    错误写法:
        Person *p = [[Person alloc] init];
        Dog *d = [[Dog alloc] init];
        p.dog = d;
        d.person
     = p;
  • 相关阅读:
    作业3-2
    作业3-1
    习题二(8)
    习题二(7)
    习题二(6)
    习题二(5)
    习题二(4)
    实验2-2
    实验2
    第二章 例题2-11
  • 原文地址:https://www.cnblogs.com/Alling/p/3971895.html
Copyright © 2011-2022 走看看