首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网络技术 > 网络基础 >

NSString retainCount的一个非常有意思的有关问题

2012-08-29 
NSString retainCount的一个非常有意思的问题.一直以来发现对copy和retain的区别还是觉得有点糊涂,,今天晚

NSString retainCount的一个非常有意思的问题.

一直以来发现对copy和retain的区别还是觉得有点糊涂,,今天晚上花时间来研究这个问题.

最后问题是解决了,但是发现了个特别有意思的问题.看下面,

?

??? NSString *str = [NSString stringWithString:@" hello world"];
??? [str retain];
??? NSLog(@"str retain count = %u",[str retainCount]);

?

我想通过上面的代码看看retain后的str这个变量的retainCount,但是我发现不管有没有retain str,,结果总是: 2147483647

为什么呢??

第一反应, 2147483647这个数应该是 UINT_MAX ( Maximum value an `unsigned int'),但是为什么是它呢?

?

google了一下,有很多说法,比如

http://stackoverflow.com/questions/1390334/nsstring-retain-count

http://stackoverflow.com/questions/403112/objective-c-nsstring-property-retain-count-oddity

?

给出你的答案吧.

热点排行