Objective-C中循环引用导致内存泄露的
如果按照OBJC的内存管理约定,基本上能避免常规的内存泄露,但循环引用所带来的隐式内存泄露是很难避免的。循环引用是指两个对象互相retain对方,通过OBJC的release是无法销毁这两个对象的。更严重的是,如果几个对象间接相互引用,比如A<-B,B<-C,C<-A,那么A、B、... « 阅读全文
iphone NSmutableArray内存管理
iPhone程序开发中的内存泄漏问题是新手非常头痛的事情,可能是用C#这类自动垃圾释放的语言太习惯了,用xcode中的profile工具查了一下我写的小程序,内存泄漏了一大堆,经过一阵子排查,在NSMutableArray中添加对象后不正确维护对象的引用计数是一个主要原因。NSMutableArra... « 阅读全文
Objective-C中init函数(self=[super init])实现的相关研究
原文出处: 今天在学习Objective-C时见到某初始化函数中有如下代码: self = [super init]; if(self){// Initialize members } return self; 当时只是觉得Objective-C与才C++应该一样,每个子类对象都包含父类对象,所以super与self都是指向同一对象的头部的,[super init]返回的地址应该与self所代表的地址一样(即self == [super... « 阅读全文
Objective-C的self的使用
在调查Objective-C的self和java的this的区别的时候无意看到的一篇文章,虽然不是自己想找的,但觉得对初学者挺有用,所以翻译了一下。原文http://useyourloaf.com/blog/2011/2/8/understanding-your-objective-c-self.html-------------------------------------------------------------------------------------------A fre... « 阅读全文
iPhone 真机调试流程及常见错误
真机调试流程1.前提条件:拥有苹果开发者账号(AppleID和开通个人或者企业账户)2.可以按照下图左边菜单项依次完成相应步骤 1)创建Certificate 从应用程序文件夹中打开实用程序,从里面打开钥匙串访问(keychainaccess),在应用最上面的菜单栏,钥匙串访问->... « 阅读全文
Objective-C的super和self与Java的super和this
开始看到super和self时,觉得跟java里的super和this应该是一样的,但是后来发现比较微妙,两者还是有区别的。这里有一篇文章讲了Objective-C的super和self的内部机制,写得还是比较具体的,可以参照一下。http://web2.0coder.com/archives/30... « 阅读全文
Objective-C中使用@try处理异常
来自:http://www.itivy.com/iphone/archive/2011/12/20/iphone-objective-c-try-catch-statement.html在我们编写Objective-C程序时,最好的编程实践是指能预测程序中可能出现的问题。为此,你可以测试使程序异常终... « 阅读全文
Compile Objective-C Programs Using gcc
Compile Objective-C ProgramsUsing gcchttp://blog.lyxite.com/2008/01/compile-objective-c-programs-using-gcc.htmlProbably 99% of all Objective-C programmers out there are compilingtheir programs with XCode very happily. However that doesn't stopth... « 阅读全文
在iPhone应用中如何避免内存泄露
在iPhone应用中如何避免内存泄露 本文我们将介绍在iPhone应用中如何避免内存泄露。想了解“在iPhone应用中如何避免内存泄露”就必须先了解iPhone内存管理的所有权。 关于所有权 所有权是iPhone内存管理的核心思想,对象的所有者负责在使用完对象后进行释放。一个对象可以有多个所有者... « 阅读全文
Objective-C @implementation (类的实现)
上一次我们讨论了 @interface部分,主要是用于定义类的接口。回忆一下大概的框架@interface 类的名字:父类(通常情况下是 NSObject) 实例变量(列表);//方法的声明-(void) 方法的名称:(参数的类型);@end // 类通常情况下:接口被称为API(application programming interface)@implementation Cricle-(void) setFillColor:(ShapeColor) c f... « 阅读全文
Objective-C:对象初始化
obj中创建新对象有两种方式:[classnamenew]和[[classnamealloc]init]。两种方法等价,Cocoa惯例是使用alloc和init。1.分配对象: allocation是一个新对象诞生过程,从OS获得一块内存并指定为存放对象的实例变量的位置。同时alloc方法... « 阅读全文
windows下编译objective-C
http://www.gnustep.org/experience/Windows.html在上面的网站下载 gnustep-core-0.23.1-setup.exegnustep-system-0.23.0-setup.exeGorm-1.2.10-setup.exeSystemPreferences-1.1.0-setup.exe注意都下最新版本的吧.下好后,都是一路NEXT安装就好了.假设你装在D盘,>代码应该写在什么地方 然后说写代码,代码写在哪里都可以.就放C:/好了.>... « 阅读全文
内存管理
1.尽量少的UIView层通常我们喜欢把很多控件层(UILabel,UIButton,UIView等)一起放到一个大的UIView容器来显示我们的内容,这个方法一般是可以的,但是如果要经常重新刷新内容的大区域界面,多数发生在iPad的应用中,这个方法会带来过多的内存使用和动画的延迟(比较卡),例如,... « 阅读全文
第三章: Objective-C 语言(一)
[转]自appleboy第三章:Objective-C语言从前,一个叫BradCox的人觉得是时候让编程更模块化一些.当时C语言是非常流行和强大的语言,Smalltalk是一个优雅的面向对象语言.所以,基于C,BradCox增加了类Smalltalk的类和消息发送机制,Objective-C语言就诞... « 阅读全文
解决XCode4.2转换Objective-C指针到C指针与ARC冲突的问题(图)
还是来自iphone开发的那本书上的一小段代码,因为用最新的xcode4.2加ios5SDK,所以问题蛮多的,不过现在已经都解决了,很开心。 出现问题的代码:NSString *path =[[NSBundle mainBundle] pathForResource:@"win" ofType:@"wav"];NSURL*url = [NSURL fileURLWithPath:path];AudioServicesCreateSystemSoundID(... « 阅读全文
如何学习Objective-C
1.请先把C语言基础学好;2.看《ProgramminginObjective-C2.0》,不要看《Objective-C2.0程序设计》;3.看《CocoaDesignPatterns》和《CocoaProgrammingDeveloper'sHandbook》,不要因为他们很难而我们自己是初学者... « 阅读全文
xcode4.2在itouch2(with ios4.2)上的调试(图)
先贴一段(原帖:http://stackoverflow.com/questions/7760946/possible-to-target-older-ios-versions-when-using-xcode-4-2-and-ios-5-sdk) I was trying to get a newly created Xcode 4.2 project running on an iPhone 3G 4.2.1. Here is how I was able to get it to ru... « 阅读全文
Objective C内存管理进阶(三): 调试内存(图)
1)内存的问题是发现越早,解决的代价就越小。所以最重要的是理解ObjectiveC内存管理,遵循我之前提到的实践准则和编码规范。另外,在每个迭代周期要做一些压力和内存测试,尽早发现问题。 2)利用Clang静态检测工具。在XCode3.2之后的版本里,Clang已经被集成进来。Build->B... « 阅读全文
第九章内存管理
转自http://blog.sina.com.cn/s/blog_538ee4a70100oe26.html如果要从事Leopard或更高版本的MacOS程序开发使用Objective-C2.0的垃圾回收机制,若要从事旧版本MacOS或iPhone开发则要全部阅读本章内容一、对象生命周期程序中的对象... « 阅读全文
Objective-C学习笔记(0001)
1. 扩展名 . 头文件。头文件中包含类、类型、函数和常量的声明。 .m 源文件。可以包含C代码和Objiect-C代码。 .mm ... « 阅读全文

