美文网首页
为了优化,居然还吃了一次坑

为了优化,居然还吃了一次坑

作者: brzhang | 来源:发表于2016-02-27 10:41 被阅读24次

    我为了避免在循环中重复实例化一个类,结果自己居然踩到了一枚地雷!真是大意了,还要测试时及时发现。

    这是我最开始的代码:


    Paste_Image.png

    这是调试时,contents变量的内存数据


    Paste_Image.png

    这是我“优化”后的代码,注意,在循环体中去掉了content实例化,直接用外面那个content


    Paste_Image.png

    然后,下面这幅图就是优化后,contents的结果!!!


    Paste_Image.png

    问题分析

    其实很简单,在swift中,甚至很多编程语言中,class类型都是引用类型,因此content其实都是一个,所以改来该去都是改的那一个,自然最终数组中的元素都会变成最后一个。
    比如java里面也是也一样的,这里有一个测试

    Paste_Image.png

    相关文章

      网友评论

          本文标题:为了优化,居然还吃了一次坑

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