iOS项目中的typedef重定义问题

时间:2018-11-15 12:58:23

标签: ios objective-c typedef

我正在为我的项目使用第三方库(https://github.com/zhang28602/ZZYQRCode)。当我将其插入我的项目时,它开始引发以下错误:具有不同类型的Typedef重新定义('void(^)(NSString * __ strong)'vs'void(^)(__ strong id,NSURLResponse * __ strong)')

对于以下代码行:typedef void(^ SuccessBlock)(NSString * reuslt);

请帮助我解决这个问题。

1 个答案:

答案 0 :(得分:1)

该项目使用非常通用的名称(SuccessBlock)在其公共标头中定义了一个全局typedef。您可能已经在程序的其他位置定义了SuccessBlock

如果可能的话,请开发人员在其名称上使用前缀。这应该是ZZYSuccessBlock。或者,重命名SuccessBlock的另一个实例。

如果不可能,请尝试确保系统的任何部分都不会同时导入ZZYQRCode.h和任何.h文件定义该文件的其他版本。