iOS出现NSString* class_name = ***之类的错误的解决方法

时间:2022-07-02 03:01:17


出现这种问题的原因很可能是关闭了ARC功能(automatic refrence count)导致的,由于没有自动引用计数,导致有些字符串资源在不恰当的时机被释放掉了,从而产生了野指针,就是说NSString指针不再指向之前的字符串了。

想要修复这个问题,可以在build settings中,搜索automatic reference,将ARC功能设置为YES

当然,修改这个也可能会导致一些新的问题,比如arc forbids explicit message send of release,这时候你需要在build phases中,搜索出现这种问题的文件名,然后在后面添加指令:-fno-objc-arc,也就是单个取消该文件的arc功能就可以了。