在Utility类中将NSSortDescriptor
声明为静态是一个好主意吗?我在应用程序中对10个不同的地方进行了一些数组排序。我想如果我可以重用我的Utility类中的NSSortDescriptor
,那么每当我想要对某些内容进行排序时,它会在分配新的NSSortDescriptor时使用更少的内存吗?
答案 0 :(得分:1)
我说这是一个折腾。在正常使用中,您的排序描述符会进入内存,但(重要的是)会根据需要保留内存。这可能会占用周期,但它是良好的内存管理。静态指向它可以保存初始化周期,但是在不使用时会将其保留在内存中,这是糟糕的内存管理。
集中初始化逻辑(可能是在实用程序类的类方法中)是一个好主意,但它不应该保留它为重用而创建的实例。
答案 1 :(得分:0)
为什么不呢? ObjC类无论如何都是轻量级的,而NSSortDescriptor只是一个对象,你的内存逻辑就是现实的,只要这不仅仅是一次性的事情。