-ObjC是用来解决在static library调用catgory方法报selector not recognized错误时使用的。也就是说,如果你在一个static library里面声明了一个category,在运行的时候调用这个方法就很有可能会出现这个错误,而这个错误本不应该出现,因为你已经定义了那个方法。
那么,为什么会出现这样一个问题?( method not recognized 错误)
简单来说,就是因为unix的静态库与OC动态机制不协调导致的。当c语言文件被编译时,所有源代码会被编译成对象文件,即.o文件(objet file)。这些对象文件里面包含了相对应的可执行文件,和静态数据。
网友评论