- 不能使用retain/releaase/retainCount/autorelease
- 不能使用NSAllocateObject/NSDeallocateObject
- 不要显示调用dealloc
- 使用@autoreleasepool块代替NSAutoreleasePool
- 不能使用区域NSZone
- 对象型变量不能作为C语言结构体的成员
- 显示转换“id”和“voic *”(通过__bridge转换,id和void *就能互相转换)
id obj = [[NSObject alloc] init]
void *p = (__bridge void *)obj
但是__bridge跟__unsafe_unretained一样都是不安全的。可以使用__bridge_retained,这个相当于retain。而__bridge_transfer相当于release