我有一行代码:
CGFloat *components = CGColorGetComponents([color CGColor]);
并且分析仪说这里有泄漏。 我试过免费(组件),但当我这样做时,应用程序崩溃了。 因为我没有分配任何东西,所以真的有泄漏。我知道CGColorGetComponents会返回一个包含3个CGFloat的数组,但是当我尝试释放它们时会崩溃。
感谢任何帮助。
答案 0 :(得分:1)
请参阅SO #792119。
声明变量不会创建数组。事实上,CGColorGetComponents也没有。无论创建什么CGColor对象都创建了数组并将其存储在对象中; CGColorGetComponents允许您拥有指向该存储的指针。
简而言之,不要释放指针。
但是,您可以将其设置为NULL。
答案 1 :(得分:0)
也许你应该将color.CGColor作为参数传递? 看一下这个主题:What does CGColorGetComponents() return?