@property 属性的用法
*weak(assign): 代理\UI控件
*strong(retain): 其他对象(除代理\UI控件\字符串以外的对象)
*copy:字符串
*assign:非对象类型(基本数据类型int\float\BOOL\枚举\结构体)
@property (weak, nonatomic) IBOutlet UIWebView
Strong 和 Weak
Strong : 强指针 \ 强引用
Weak: 弱指针 \ 弱引用
#import <Foundation/Foundation.h>
#import “Person.h”
int main(int argc, const char * argv[])
{
@autoreleasepool{
Person *p = [[Person alloc] init];
// [p release]; 释放内存
// 强指针,默认情况下任何指针都是强指针
// 弱指针:使用__weak修饰的指针
// ARC的判断准则:只要没有任何强指针指向对象,这个对象就会被销毁。
}
return 0;
}
小结:
两个对象互相引用时,只能一个为strong,另一个为weak.
UI 控件的属性一般为弱指针
@property (weak, nonatomic) IBOutlet UIbutton *btn;
copy : 复制 (深复制\浅复制)