我遇到一个问题,我收到一个编译时错误,在lib1和lib 2中显示重复符号_OBJC_CLASS _ $ _ XYZ。看起来两个库中的类名相同。
如何摆脱这种情况?任何线索。
答案 0 :(得分:2)
简单:更改其中一个类的名称。 (不,这真的不简单,因为您必须更改库中该类名的每个用法)。由于objective-c是一种动态语言,因此不能有两个具有相同名称的类。在运行时使用类来确定有关您创建的对象的所有内容。为避免命名冲突,在创建共享库时应始终使用前缀。
请参阅Code Naming Basics,特别是“类和协议名称”部分。
答案 1 :(得分:1)
看起来您必须重命名其中一个或在任何给定时间只加载一个。
What is the best way to solve an Objective-C namespace collision?