ios - iOS项目中的typedef重新定义问题
问题描述
我正在为我的项目使用第三方库(https://github.com/zhang28602/ZZYQRCode)。当我将它集成到我的项目中时,它开始抛出以下错误:Typedef redefinition with different types ('void (^)(NSString *__strong)' vs 'void (^)(__strong id, NSURLResponse *__strong)')
对于以下代码行: typedef void(^SuccessBlock)(NSString *reuslt);
请帮我解决这个问题。
解决方案
该项目使用非常通用的名称 ( SuccessBlock
) 在其公共标头中定义了一个全局 typedef。您可能SuccessBlock
在程序的其他地方以另一种方式定义。
如果可能,让开发人员在他们的名字上使用前缀。这应该是ZZYSuccessBlock
。或者,重命名SuccessBlock
.
如果这不可能,请尝试确保系统的任何部分都不会同时导入两者ZZYQRCode.h
,并且任何 .h 文件都定义了它的其他版本。
推荐阅读
- javascript - 如何将脚本应用于所有模式弹出窗口
- python - Python范围替代
- swift - 如何将计算结果存储在 UserDefaults 中以显示在“结果”视图控制器中
- php - 如何为 Magento 2 做多个价格字段
- angular - 角度中的按钮单击事件问题
- xml - 将结构体作为参数传递给函数,并返回对应结构体的切片
- linq - 使用 Linq to sql 执行区分大小写的查询?
- reactjs - 如何在状态更改时重新呈现 Datatable 组件
- amazon-web-services - AWS 转换数据进入 IoT Analytics 管道并出现 Lambda 函数权限错误
- perl - 从 `>` 切换到 `<` 毁了我的单行