
OC总结
路漫漫兮风吹草
这个作者很懒,什么都没留下…
展开
-
什么是pch?pch的作用?
1.什么是pch?pre-Compile Header(预编译头文件),由编译器在建立工程时自动生成;其中存放有工程中已经编译的部分代码;在以后建立工程时不再重新编译这些代码。但是现在xcode创建project的时候不会自动创建生成pch文件,需要我们主动去创建(如果需要的话),并且在 Build setting中去设置prefix compile的pch文件路径。2.作用:自定义常用宏 导入一些常用类的头文件 自定义log宏//三个...代表多个参数,__VA_ARGS__ 表示原创 2021-04-10 13:55:22 · 6610 阅读 · 0 评论 -
CDN: trunk URL couldn't be downloaded
问题:关于CDN: trunk URL couldn't be downloaded这个问题,是我在进行 pod search 第三方库 的时候出现的。进行的操作:我的cocoapods的版本是1.8.4.以前基本没出现过这个问题,然后我就搜答案,进行如下操作1.进行了pod repo remove trunk 操作2.移除了之后再pod search 果然没问题。但是!~~...原创 2020-02-20 11:09:46 · 12698 阅读 · 3 评论 -
autorelease的使用和注意
1.当我们创建一个对象时,(1)Person *p = [[Person alloc] init],就需要在下方执行一次(2)[p release],而[p release]一般放在最后,如果紧跟(1)的话,当创建完对象,对象就会被销毁,成为僵尸对象,假设,Person中有age属性,则再执行(3)p.age = 10;无疑会报错(野指针错误),如果放在程序的最后面的话,则p.age 正常执行。所原创 2015-07-08 23:12:16 · 3082 阅读 · 0 评论 -
关于OC的内存管理-01
描述了部分关于retain、release、僵尸对象、野指针等。原创 2015-07-06 02:49:03 · 1183 阅读 · 0 评论 -
OC内存管理-02
假设我们有一个人的类Person和类Book,类的具体实例变量和方法如下 (1) Person.h#import #import "Book.h"@interface Person : NSObject{//Person类中有书 Book *_book;}-(void)setBook:(Book *)book;-(Book *)book;@end原创 2015-07-06 22:51:43 · 434 阅读 · 0 评论 -
关于OC内存管理-03
1.对于上篇文章,对象的实例变量(OC对象类型)的setter方法,只是执行一次retain操作,则这个程序是有缺陷的。可以想到的是,如果我们不小心在main.m里多执行了一次p.book = b,则我们又执行了一次retain操作,此时计数器又加上了1,不符合内存管理原则。但是如何修改呢。 我们可以在执行retain操作做一个判断,如果传进来的对象参数和实例变量不相等 则进行retain操作原创 2015-07-07 23:41:57 · 735 阅读 · 0 评论 -
retain的循环引用注意以及@class的使用
本文主要说明了retain循环的循环引用及解决方法。原创 2015-07-07 23:54:27 · 2018 阅读 · 0 评论