一、区别1.修饰变量类型的区别weak 只可以修饰对象。如果修饰基本数据类型,编译器会报错-“Property with ‘weak’ attribute must be of obj
转载 2023-05-22 11:11:10
67阅读
本来要自己写一篇的,看到mj老师的这篇很好,就果断复制过来了,再加上自己
转载 2023-02-06 13:35:04
101阅读
strong与weak是由ARC新引入的对象变量属性xcode 4.2(ios sdk4.3以下版本)之前的版本使用的是retainassign,是不支持ARC的。xcode 4.3(ios5以上版本)之后就有了ARC,并且开始使用strong与weakassign: 用于非指针变量。用于基础数据类型 (例如NSInteger)C数据类型(int, flo...
原创 2023-05-08 19:21:46
160阅读
weakassign的区别-正确使用weakassign 一、区别 1.修饰变量类型的区别weak只可以修饰对象。如果修饰基本数据类型,编译器会报错-“Property with ‘weak’ attribute must be of object type”。assign可修饰对象,基本数据 ...
转载 2021-05-08 22:11:29
235阅读
2评论
1:ARC环境下,strong代替retain.weak代替assign2:weak的作用:在ARC环境下,,所有指向这个对象的weak指针都将被置为nil。这个T特性很有用,相信很多开发者都被指针指向已释放的对象所造成的EXC_BAD_ACCESS困扰过,
原创 2022-05-14 10:50:09
829阅读
 有时我们写个代码开源出来给别人用时,会被其他开发者抱怨编译不了,很多情况是版本的问题,尤其现在ARC的出现后关于weak,strong的问题让人头疼。 有个开源代码这里做的很不错,就是MBProgressHUD 看下他是怎么做的: #ifndef MB_STRONG #if __has_feature(objc_arc)     #define MB_
转载 精选 2012-11-28 19:21:38
439阅读
一. copy retain 区别copy:建立一个索引计数为1的对象,然后释放旧对象 对NSString对NSString 它指出,在赋值时使用传入值的一份拷贝。拷贝工作由copy方法执行,此属性只对那些实行了NSCopying协议的对象类型有效。更深入的讨论,请参考“复制”部分。retain:释放旧的对象,将旧对象的值赋予输入对象,再提高输入对象的索引计数为1对其他NSObject其子类
转载 精选 2014-06-11 13:29:05
686阅读
copy与retain:1、copy其实是建立了一个相同的对象,而retain不是;2、copy是内容拷贝,retain是指针拷贝;  3、copy是内容的拷贝 ,对于像NSString,的确是这样,但是如果copy的是一个NSArray呢?这时只是copy了指向array中相对应元素的指针.这便是所谓的"浅复制".4、copy的情况:NSString *newPt = [pt
原创 2014-08-12 14:11:02
599阅读
copy:建立一个索引计数为1的对象,然后释放旧对象 对NSString 对NSString 它指出,在赋值时使用传入值的一份拷贝。拷贝工作由copy方法执行,此属性只对那些实行了NSCopying协议的对象类型有效。更深入的讨论,请参考“复制”部分。 retain:释放旧的对象,将旧对象的值赋予输入对象,再提高输入对象的索引计数为1 对
原创 2013-01-03 20:46:00
1291阅读
都是用于修饰@property声明的变量 assign:用于非oc对象类型,表示直接赋值(默认值) retain:用于mrc中,用于类属性中有oc对象的情况,表示先推断赋值的对象是否实例对象变量的值相等。 若不相等则先retain在赋值。(即release旧值,retain新值,用于修饰对象) r
转载 2018-01-14 10:05:00
78阅读
2评论
__weak是为了解决block的循环引用问题.例如:TRBlockObject *blockObj = [TRBlockObject new]; blockObj.block = ^void(void){     NSLog(@"blockObj%@“,blockObj);  };&nb
原创 2016-06-20 10:26:50
806阅读
@property (nonatomic, assign) NSString *title; 什么是assign,copy,retain之间的区别? assign: 简单赋值,不更改索引计
转载 2023-05-09 16:22:56
157阅读
block下循环引用的问题 __block本身并不能避免循环引用,避免循环引用需要在block内部把__block修饰的obj置为nil __weak可以避免循环引用,但是其会导致外部对象释放了之后,block 内部也访问不到这个对象的问题,我们可以通过在 block 内部声明一个 __strong
转载 2020-02-05 10:46:00
141阅读
2评论
现在我们看看iOS5中新的关键字strong, weak, unsafe_unretained. 可以与以前的关键字对应学习strong与retain类似,weak与unsafe_unretained功能差不多(有点区别,等下会介绍,这两个新 关键字与assign类似)。在iOS5中用这些新的关键字...
转载 2015-11-29 12:41:00
82阅读
2评论
转载出处:http://www.2cto.com/kf/201303/192824.html iOS5中加入了新知识,就是ARC,其实我并不是很喜欢它,因为习惯了自己管理内存。但是学习还是很有必要的。在iOS开发过程中,属性的定义往往与retain, assign, copy有关,我想大家都很熟悉了,在此我也不介绍,网上有很多相关文章。现在我们看看iOS5中新的关键字strong, weak, u
转载 精选 2014-04-07 17:11:34
473阅读
iOS ARC Weak And Strong
转载 精选 2014-05-14 16:17:41
489阅读
1点赞
iOS5中加入了新知识,就是ARC,其实我并不是很喜欢它,因为习惯了自己管理内存。但是学习还是很有必要的。 在iOS开发过程中,属性的定义往往与retain, assign, copy有关,我想大家都很熟悉了,在此我也不介绍,网上有很多相关文章。现在我们看看iOS5中新的关键字strong, wea...
转载 2014-04-26 11:32:00
40阅读
2评论
首先看下在整个container上面的复制.c1=c2可以等同于c1.erase(c1.begin(),c1.end()) //delete all elems in c1c1.insert(c1.begin(),c2.begin(),c2.end);在赋值后,c1c2完全相等,即使他们曾经的size不相等,赋值后也相等了。=assign操作会是左边的容器的迭代器失效。然而,swap不会使迭代器失效。after swap,iteratros continue to refer to thesame elements,although those elements are now in a
转载 2013-08-25 20:19:00
85阅读
2评论
1 subscribe: 自动安排分区, 通过group自动重新的负载均衡; 关于Group的实验: 如果auto commit = true, 重新启动进程,如果是同样的groupID,从上次commit的地方开始消费数据,但是如果换了group后,就可以继续 消费了。 auto commit =
转载 2018-12-10 23:01:00
148阅读
2评论
ARC指南1 - strongweak指针提示:本文中所说的
转载 2022-07-28 12:32:54
829阅读
  • 1
  • 2
  • 3
  • 4
  • 5