编程论坛

 找回密码
 立即注册
广告联系qq1031180668广告位
查看: 139|回复: 0

[c/c++] IOS Objective-c 内存管理

[复制链接]
  • ta_mind

    2018-8-17 21:57
  • classn_01: 71 classn_02

    [LV.6]常住居民II

    983

    主题

    1704

    帖子

    3369

    积分

    管理员

    Rank: 9Rank: 9Rank: 9

    积分
    3369

    最佳新人活跃会员热心会员推广达人宣传达人灌水之王突出贡献优秀版主荣誉管理论坛元老

    发表于 2018-9-16 23:44:18 | 显示全部楼层 |阅读模式

    1:手动内存管理:

    内存分为5个区,平时我们申请的变量都存放在栈区(包括指针变量),但是对象却保存在堆区,

    堆区和栈区的区别在于,栈区存放的变量在程序执行到变量所在的作用域结束时系统便回收栈区变量的内存,但是当执行到对象的作用域结束时,却不会自动回收对象所占的内存,需要程序员手动释放.在默认创建一个对象的时候,对象的应用计数器就是1;

    2: ARC:Automatic(自动) Reference(引用) Counting(计数) ,也就是自动内存管理,有了ARC,程序员便不用手动释放对象所占的内存,由编译器和操作系统帮我们在不需要对象时,自动释放对象内存.

    从网上获悉Mac OS X v10.6和v10.7(64位应用)的Xcode 4.2以上版本支持ARC,IOS 4 和 IOS 5下,ARC都能工作,但Weak不支持Mac OS X v10.6 和IOS 4,所以要想在IOS 4 下运行ARC的程序,只能用strong.


    1)支持ARC的开发环境:Mac OS X v10.6 和 v10.7 (64位应用) 的Xcode 4.2以上版本2)支持ARC的运行环境:  2.1 支持weak:iOS 5 或 Mac OS X v10.7以上  2.2 不支持weak: iOS 4 或 Mac OS X v10.6

    来自邮箱:忆/aiq风 <su_wenyao@qq.com> 投稿文章,审核通过,邀请码已经发发送,注意查收




    不积跬步,无以至千里
    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    手机版|Archiver|小黑屋|sitemap|编程论坛 - 一个单纯的编程学习交流论坛 ( 豫ICP备15032706号 )

    GMT+8, 2018-12-19 15:07 , Processed in 1.095287 second(s), 24 queries .

    Powered by Discuz! X3.4

    © 2001-2013 Comsenz Inc.

    快速回复 返回顶部 返回列表