We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
strong 和 copy都会持有对象,一个是持有对象的本身,一个是持有对象的副本。copy 多用于修饰有可变类型的不可变对象例如 NSString,NSArray,NSDictionary上。
weak,unsafe_unretained 更像一个旁观者,它们不会对数据的引用计数起到任何的改变,它看着对象被持有,被销毁却无能为力,weak,unsafe_unretained 二者的区别在于weak会在对象被销毁的时候会将其置为nil。而unsafe_unretained不会,unsafe_unretained 在开发中用得比较少, 如果对性能有极高的要求方可以考虑使用 unsafe_unretained 替换 weak,因为weak 其实对性能还是有影响的,只不过少量使用的时候是不会察觉到的。weak的最主要作用就是解决循环引用的问题。
assign 表明 setter 仅仅是一个简单的赋值操作,没有持有不持有这一说,通常用于基本的数值类型
The text was updated successfully, but these errors were encountered:
No branches or pull requests
strong 和 copy都会持有对象,一个是持有对象的本身,一个是持有对象的副本。copy 多用于修饰有可变类型的不可变对象例如 NSString,NSArray,NSDictionary上。
weak,unsafe_unretained 更像一个旁观者,它们不会对数据的引用计数起到任何的改变,它看着对象被持有,被销毁却无能为力,weak,unsafe_unretained 二者的区别在于weak会在对象被销毁的时候会将其置为nil。而unsafe_unretained不会,unsafe_unretained 在开发中用得比较少, 如果对性能有极高的要求方可以考虑使用 unsafe_unretained 替换 weak,因为weak 其实对性能还是有影响的,只不过少量使用的时候是不会察觉到的。weak的最主要作用就是解决循环引用的问题。
assign 表明 setter 仅仅是一个简单的赋值操作,没有持有不持有这一说,通常用于基本的数值类型
The text was updated successfully, but these errors were encountered: