【问题标题】:typedef redefination issue in iOS projectiOS项目中的typedef重新定义问题
【发布时间】:2018-11-15 12:58:23
【问题描述】:

我正在为我的项目使用第三方库 (https://github.com/zhang28602/ZZYQRCode)。当我将它集成到我的项目中时,它开始抛出以下错误:Typedef redefinition with different types ('void (^)(NSString *__strong)' vs 'void (^)(__strong id, NSURLResponse *__strong)')

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

请帮我解决这个问题。

【问题讨论】:

  • 你能分享你得到错误的代码吗?

标签: ios objective-c typedef


【解决方案1】:

该项目在其公共标头中使用非常通用的名称 (SuccessBlock) 定义了一个全局 typedef。您可能在程序的其他地方以另一种方式定义了SuccessBlock

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

如果无法做到这一点,请尝试确保系统的任何部分都不会同时导入 ZZYQRCode.h 和定义其他版本的任何 .h 文件。

【讨论】:

    猜你喜欢
    • 2011-11-19
    • 2012-01-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-11-15
    • 1970-01-01
    相关资源
    最近更新 更多