strong ,weak,copy关键字使用,及weak跟assign区别
Posted welllin
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了strong ,weak,copy关键字使用,及weak跟assign区别相关的知识,希望对你有一定的参考价值。
1strong和weak都是针对对象
2strong持有对象的所有权
3weak不持有对象的所有权
什么时候使用weak
1.委托 为了规避循环引用 使用weak限定delegate指针
2.SB拖拽控件 可以使用weak关键字限定属性
与assign的区别
1.weak只能修饰对象指针,assign可以修饰任意类型指针
2.weak指针指向的对象被释放 weak指针自动置为nil,assign不会自动置为nil
copy关键字如何使用
1.block 在栈区分配内存(系统管理其内存) 拷贝到堆区 方便程序员可管理其内存
2.NSString NSArray NSDictionary存在对应的可变类型 可变类型通过copy得到的是不可变的副本
以上是关于strong ,weak,copy关键字使用,及weak跟assign区别的主要内容,如果未能解决你的问题,请参考以下文章
ARC声明属性关键字详解(strong,weak,unsafe_unretained,copy)
iOS 开发 property,strong,weak,retain,assign,copy,nomatic 的区别及使用
ios中关键词weak,assign,copy.strong等的区别
iOS内存管理-- iOS中strong,copy,retain,weak,assign的用法