黑马程序员技术交流社区
标题:
关于变量释放内存的问题,求助!
[打印本页]
作者:
剑气近
时间:
2014-6-24 21:55
标题:
关于变量释放内存的问题,求助!
为什么Objective-C类实例里面的比如NSINTEGER,float,之类的成员变量不用释放内存,而比如类里的指针类型的变量却需要释放的问题。
作者:
小太阳
时间:
2014-6-25 09:43
1 减号(或者加号) 减号表示一个函数、或者方法、或者消息的开始,怎么说都行。 比如c#中,一个方法的写法可能是: private void hello(bool ishello) { //OOXX } 用Objective-C写出来就是 -(void) hello:(BOOL)ishello { //OOXX } 挺好懂的吧? 不过在Objective-C里面没有public和private的概念,你可以认为全是public。 而用加号的意思就是其他函数可以直接调用这个类中的这个函数,而不用创建这个类的实例。 2 中括号 中括号可以认为是如何调用你刚才写的这个方法,通常在Objective-C里说“消息”。 比如C#里你可以这么写: this.hello(true); 在Objective-C里,就要写成: [self hello:YES]; 3 NS**** 老乔当年被人挤兑出苹果,自立门户的时候做了个公司叫做NextStep,里面这一整套开发包很是让一些科学家们喜欢,而现在Mac OS用的就是NextStep这一套函数库。
作者:
⒈心只霸占沵
时间:
2014-6-25 09:48
本帖最后由 ⒈心只霸占沵 于 2014-6-25 09:51 编辑
OC中好像也是分为五大存取 栈 堆 常量区 方法区 还有一个我也不清楚
float int double char 都属于基本类型,基本类型应该是存在于栈里的,栈里的变量是自动释放的,不用我们去管理
而OC对象是存储在堆内存中的,堆内存中对象需要我们去管理内存,所以不用的时候需要释放
不知道说的对不对,不多大体是这个意思,希望对你有帮助!
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2