Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/107.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 不同库上的类名相同_Ios_Objective C_Xcode - Fatal编程技术网

Ios 不同库上的类名相同

Ios 不同库上的类名相同,ios,objective-c,xcode,Ios,Objective C,Xcode,在objective C中,我认为永远不可能对不同的类(在.m文件中)使用相同的类名。另外,xcode将通过复制符号错误进行处理 但在最近的一个项目中,我发现两个不同的静态库使用相同的类名。而且项目建设和运行都是成功的 为什么不显示重复符号错误?开发人员如何知道该类的哪个库xcode引用?我相信,在两个不同的静态库中,相同的名称出现两次是可能的,而不会产生链接器错误。但它可以而且确实会造成相当大的混乱。默认情况下,链接器并不关心,除非您以某种方式强制它加载来自各种静态库的所有内容。当它找到匹配项

在objective C中,我认为永远不可能对不同的类(在.m文件中)使用相同的类名。另外,xcode将通过复制符号错误进行处理

但在最近的一个项目中,我发现两个不同的静态库使用相同的类名。而且项目建设和运行都是成功的


为什么不显示重复符号错误?开发人员如何知道该类的哪个库xcode引用?

我相信,在两个不同的静态库中,相同的名称出现两次是可能的,而不会产生链接器错误。但它可以而且确实会造成相当大的混乱。默认情况下,链接器并不关心,除非您以某种方式强制它加载来自各种静态库的所有内容。当它找到匹配项时,它会在不知道它是否是您真正想要的内容的情况下使用它。如果您使用-ObjC或-all_加载标志,如果它抱怨,我不会感到惊讶……但我没有尝试过。