1.什么是沙盒?什么是沙盒机制
沙盒就是应用程序只能在为该程序创建的文件夹中进行文件的读取,这块区域成为沙盒
沙盒机制:它是一种安全机制 1.应用程序只能在自己的沙盒中进行文件读取。2.应用程序不能去访问其他的沙盒。3.如果应用程序想要接收外部数据或者访问其他应用程序必须通过权限认证。
沙盒里面有三个文件夹:Documents:存放的是工程文件要浏览的文件,或者是工程文件创建的文件; Library:它里面有两个文件夹,一个是caches:存放的是缓存文件,一个是Perferences:设置状态信息或者是偏好信息的文件; tmp:它里面存放的是临时文件,这个文件夹中的文件在程序退出时会删掉。
NSHomeDirectory()这个是C语言上面的调用方法的方法名(),括号里面的是参数,如果有参数的话往里面传参,没有的话就不传。这个方法的返回值是根目录的路径
NSLog(@"%@",NSHomeDirectory());
//这个方法是获取沙盒中某个文件夹的路径,第一个参数是你想要获取的那个目录,第二个参数是当前的程序根目录下,第三个参数是yes得时候表明要展开全路径(即完整的路径),否则不是全路径。这个也是c语言上边的方法
//c语言定义方法就是:返回值类型 方法名(参数类型 参数名)
//oc的方法格式:- (返回值类型)方法名:(参数类型)参数名
//NSLibraryDirectory是进library目录下的。
//NSDocumentDirectory是进documents目录下面的。
//NSTemporaryDirectory()这个是C语言里的方法
NSArray *arr=NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSLog(@"%@",arr);
NSLog(@">>>%@",NSTemporaryDirectory());
//下面的是获取三个文件夹中的另外一个方法
NSString *path=[NSString stringWithFormat:@"%@/Documents",NSHomeDirectory()];
NSLog(@"---%@",path);
//附名词解释
野指针:指针指向了一块被释放掉的空间里面,这个时候就成这个指针是野指针
内存泄露:就是对象没有被释放,又不去用这个对象,这个情况成为内存泄露。
释放过度:本身释放完之后,继续release