zoukankan      html  css  js  c++  java
  • iOS面试题 02

    在面试的时候,面试官问我,“你对内存管理了解的多吗?” 我忘了当时是怎么回答的了,但是,肯定是一时没想起来怎么回答。

      1.谁创建谁释放

      2.autoreleasepool

      3.retain,copy,new都会增加一次计数,release,会让计数减一

    深拷贝和浅拷贝

      copy和retain:

      copy是创建一个新的对象,retain是创建一个指针,引用对象计数加1.copy属性表示两个对象内容相同,新的对象retain为1,与旧有对象的引用计数无关,旧有对象没有发生变化。copy减少对象对上下文的依赖。

      retain属性表示两个对象指针地址相同(建立一个指针,指针拷贝),内容当然相同,这个对象的retain值+1。

      retain是指针拷贝,copy是内容拷贝。

      对集合内容的拷贝,是深拷贝。

      stringcopy和copy,都是浅拷贝;

      mutablecopy是深拷贝

      

  • 相关阅读:
    异常处理
    SPD各模块总结
    简易js调试
    深入理解:java类加载器
    java基础简介
    android四大组件(一)Activity
    网路编程(网站源码查看器)
    ListView
    SQL查询数据总结
    函数作用域中的this问题
  • 原文地址:https://www.cnblogs.com/tanglimei/p/4766597.html
Copyright © 2011-2022 走看看