原文:iOS之NSString类型为什么要用copy修饰

在开发的过程中,只知道NSString类型最好用copy修饰而不能用strong,但是不知道为什么,今天了解了下,总算搞明白了。 如下所示,当修饰符为copy时,因为NSMutableString是NSString类型的子类,所以可以用指针self.name指向mStr,但是我们知道copy的含义是指当重新赋值时深拷贝新对象再赋值给self.name, 所以此时self.name的指针和mStr的 ...

2017-02-07 22:52 0 2913 推荐指数:

查看详情

iOScopy和strong修饰变量的区别

大部分的时候NSString的属性都是copy,那copy与strong的情况下到底有什么区别呢?比如:@property (retain,nonatomic) NSString *rStr;@property (copy, nonatomic) NSString *cStr;- (void ...

Fri Apr 29 19:33:00 CST 2016 0 1573
iOScopy和strong修饰符的区别

iOScopy和strong修饰符的区别 1.当copy的对象类型为不可变对象如NSString类型时,和Strong修饰作用是一样的 //打印信息: str==0x105086190, cpstring==0x105086170 ...

Sun Feb 17 01:46:00 CST 2019 0 711
NSString为什么用copy不用strong

我们大部分的时候NSString的属性都是copy,那copy与strong的情况下到底有什么区别呢?我们以实例来说明: @property(strong, nonatomic) NSString *strongStr; @property(copy, nonatomic) NSString ...

Sun Sep 16 00:58:00 CST 2018 0 724
为什么String要用final修饰

String被final修饰 从 String 类的源码我们可以看出 String 是被 final 修饰的不可继承类,源码如下: 那这样设计有什么好处呢? Java 语言之父 James Gosling 的回答是,他会更倾向于使用 final,因为它能够缓存结果,当你在传参时不需要考虑 ...

Thu Aug 13 19:16:00 CST 2020 0 2488
iOS NSString 与NSData转化

1. 字符串转Data NSString * str =@"str"; NSData *data =[str dataUsingEncoding:NSUTF8StringEncoding]; 2.NSData 转NSString NSString * str ...

Sun Feb 12 00:18:00 CST 2017 0 70266
ios drawRect NSString 绘制

userLightText模式下绘制白底黑边字符串,普通模式下绘制黑色字。 ios7 下使用 - (void)drawAtPoint:(CGPoint)point withAttributes:(NSDictionary *)attrs 进行绘制 ...

Mon Oct 14 22:14:00 CST 2013 0 2642
 
粤ICP备18138465号  © 2018-2026 CODEPRJ.COM