美文网首页
OC 之 Tagged Pointer

OC 之 Tagged Pointer

作者: 孙伟胜 | 来源:发表于2020-03-23 10:54 被阅读0次

    苹果确实是将值直接存储到了指针本身里面,打印地址可以看到值对应的ASCll值
    深入理解Tagged Pointer
    特点
    1.我们也可以在WWDC2013的《Session 404 Advanced in Objective-C》视频中,看到苹果对于Tagged Pointer特点的介绍:
    Tagged Pointer专门用来存储小的对象,例如NSNumber和NSDate

    2.Tagged Pointer指针的值不再是地址了,而是真正的值。所以,实际上它不再是一个对象了,它只是一个披着对象皮的普通变量而已。所以,它的内存并不存储在堆中,也不需要malloc和free。

    3.在内存读取上有着3倍的效率,创建时比以前快106倍。

    由此可见,苹果引入Tagged Pointer
    ,不但减少了64位机器下程序的内存占用,还提高了运行效率。完美地解决了小内存对象在存储和访问效率上的问题。
    注意
    不要直接访问其isa变量

    相关文章

      网友评论

          本文标题:OC 之 Tagged Pointer

          本文链接:https://www.haomeiwen.com/subject/fmchyhtx.html