OC基础--ARC的基本使用】的更多相关文章

一.ARC ARC 是一种编译器特性!而不是IOS运行时特性,和JAVA中得垃圾回收机制完全不一样ARC是自iOS 5之后增加的新特性,完全消除了手动管理内存的烦琐,编译器会自动在适当的地方插入适当的retain.release.autorelease语句.你不再需要担心内存管理,因为编译器为你处理了一切ARC规则:只要还有一个强指针变量指向对象,对象就会保持在内存中弱指针指向的对象被回收后,弱指针会自动变为nil指针,不会引发野指针错误使用注意:1.不允许调用release.retain.re…
一.ARC的判断准则:只要没有强指针指向对象,就会释放对象 二.ARC特点: 1>不允许使用release.retain.retainCount 2>允许重写dealloc,但是不允许调用[super dealloc] 3>@property的参数 * strong:成员变量是强指针(适用于OC对象类型) * weak:成员变量是弱指针(适用于OC对象类型) *assign:适用于非OC对象类型 补充:指针分两种 1)强指针:默认情况下,所有的指针都是强指针,关键词--__strong…
OC基础(1) Objective-C简介 OC和C对比 第一个OC程序 面向对象思想 OC基础(2) 类与对象 类的设计 第一个OC类 对象方法的声明和实现 类方法的声明和实现 OC基础(3) 对象的存储细节 函数与方法对比 常见错误 OC基础(4) NSString 类介绍及用法 结构体成员变量 对象和方法之间的关系 对象作为方法的参数连续传递 OC基础(5) #pragma mark指令 OC多文件开发介绍 匿名对象 OC基础(6) getter/setter方法 点语法 Self关键字…
"OC基础"这个分类的文章是我在自学Stephen G.Kochan的<Objective-C程序设计第6版>过程中的笔记. 1.什么是ARC? (1).ARC全名为Automatic Reference Counting,即是自动引用计数,会自动统计内存中对象的引用数,并在适当时候自动释放对象: (2).在工程中使用ARC非常简单:只需要像往常那样编写代码,只不过永远不用写retain. release和autorelease三个关键字: (3).在使用ARC之前,需要手…
m是OC源文件扩展名,入口点也是main函数,第一个OC程序: #import <Foundation/Foundation.h> int main(int argc, const char * argv[]) { theme manager @autoreleasepool { NSLog(@"Hello, World!"); } return 0; } 预处理指令import会自动检验头文件有没有被包含过,防止重复包含,NSLOG是日志输出,OC字符串以@开头,自动换行…
m是OC源文件扩展名,入口点也是main函数,第一个OC程序: #import <Foundation/Foundation.h> int main(int argc, const char * argv[]) { theme manager @autoreleasepool { NSLog(@"Hello, World!"); } ; } 预处理指令import会自动检验头文件有没有被包含过,防止重复包含,NSLOG是日志输出,OC字符串以@开头,自动换行,int类型的占…
OC基础语法已经全部学完,但是这些知识只是最基础的,还有很多高级知识,这个可能需要后面慢慢的去学习才能体会到.接下来我会总结前面的OC基础语法,如果大家发现有什么不正确的地方,请指正,小弟是新生,多请OC老鸟来喷~~ 试题如下: 1.将包含以下三个字符串@“1hello“,@“2word“,@”3good“的数组改写为字典,数字部分作为key,英文部分作为value.(15) 2.建立一个数组对象,使用3个不同的方法,使其引用计数增加为4,输出这个值,然后保证内存能够正确释放.(15) 3.使用…
iOS学习(OC语言)知识点整理 一.OC基础知识 1)#import  用于导入头文件,预处理阶段加载引用,只加载一次. 2)OC 依赖于Foundation框架下的头文件Foundation.h,此文件必须引用加载. 3)相较于C语言的导入头文件,头文件需要加上条件编译(#ifndef #define  #endif):防止头文件被多次包含 4)OC中关键字前面添加@符,字符串前面也需添加@符. 5)@autoreleasepool自动释放池:应用程序执行的语境,好处:应用程序会自动对内存进…
OC基础  文件管理 1.文件管理类NSFileManager对象的创建: NSFileManager *fm = [NSFileManager defaultManager]; 2.文件操作: (1)遍历查看目录下的文件: a.遍历查看目录下的文件:contentsOfDirectorAtPath:(NSString *)path error:(NSError **)error: b.深度遍历,子目录也遍历:subPathsOfDirectorAtPath:(NSString *)path e…
OC基础  NSDate #import <Foundation/Foundation.h> int main(int argc, const char * argv[]) { @autoreleasepool { NSDate *date = [NSDate date]; NSLog(@"date = %@",date); //距离现在时间多少s之后的时间 NSDate *date2 = [NSDate dateWithTimeIntervalSinceNow:]; NS…