objective-c的个人学习体会

本文作者从C++背景出发,分享了学习Objective-C的体会,特别是内存管理的理解,包括ARC(Automatic Reference Counting)的使用,以及init和abcdWithXXX等初始化方法的内存管理区别。同时,提到了Objective-C的函数调用语法、面向对象特性和Cocos2d游戏开发框架的使用体验,以及XCode开发工具中Instruments的内存分析工具。
摘要由CSDN通过智能技术生成

之前主要是用C++做开发,Java也有过一些了解,但objective-c还真是从来没用过。

这次打算做个ios上的小游戏练练手,在cocos2d和cocos2d-x之间犹豫了一下,最后还选择了objective-c。毕竟很多人在用,自己也想看看objective-c到底是啥样。


由于有C++的基础,所以基本上上手还比较顺利,有些纠结的地方这里记录一下,备忘吧。

1. 内存管理

C++里完全是程序员自己管理内存了,new了之后自己记得delete就好。obj-c里的管理方式其实也类似,谁申请的谁负责释放,只不过obj-c里采用的是引用计数的方式来管理内存的申请和释放,几个关键字是alloc, retain, release, autorelease。当然了,实际上有了ARC之后,方便了很多,retain, release, autorelease等都不用管了,只需要alloc就可以了,挺方便的。所以,如果实在不想搞懂这些个内存管理的东西,那就不要去搞懂好了,打开ARC就行。我猜Java转过来学obj-c的会更习惯使用ARC,而C++转过来的估计会更愿意搞清楚内存管理的原理。不管怎样,这里推荐使用ARC。:P

当然了,ARC与Java的垃圾回收原理上是完全不一样的,ARC是在编译期完成工作,相当于自动化地帮你在代码中增加释放内存的代码。

如果不用ARC,或者是看以前的不用ARC的老代码,就还是须要搞清楚内存管理的这几个关键字的作用了。解释这些的文章网上很多,大致学习一下也花不了太多时间。

不过有一些obj-c的惯例需要事先了解清楚,不然看这些文章时有时会比较费

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值