本文介绍: 最近被学长问到了有关NSString底层的三种实现方式,但是回答不上来,特此撰写博客记录本文讲述了NSString的三种实现方式,接下来总结一下学到的知识我们一般通过@“…”、CFSTR(“…”)或者方法来生成这种类型这种对象存储在常量区,是一种编译时常量,同时还是一种单例好处是可以提高字符串的访问效率,并且节省内存空间通过 NSString 的等方法创建的 NSString 对象一般都是这种类型。他并不是一种字符串常量。所以和其他的对象一样在被创建时获得了 1 的引用计数。
前言
最近被学长问到了有关NSString底层的三种实现方式,但是回答不上来,特此撰写博客记录
实现方式
知识引入
编译结果:
这里有一点需要注意的就是我们在使用引用计数时,我们必须要先关闭我们的ARC
__NSCFConstantString
__NSCFString
NSTaggedPointerString
三种类型的深浅复制
总结
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。