这是一个很隐蔽,报的错误,令开发者非常难找到其中报错的真正原因,升级Xcode第一次遇到这种问题,在此记录一下,也希望遇到这种问题的兄弟,看到我写的文章,能够快速解决这种问题,一开始遇到这个问题,有种无从下手的感觉,
图片的报错,让我一度以为是和C++有关的东西报错,从definition of ......来看是应该是定义重复了什么的,实际上也是定义重复了。不过会以为是和系统的东西重复定义,报错了。
实际上不是,因为我的工程里面用到音视频的库,打包的.a库,一开始怀疑是这里有什么宏定义和系统的重复了,全局搜索也没搜到。后面和别的同事探讨了一下,新建一个工程,把工程有关的音视频的东西,导入到新的工程,一顿操作,没发现错误。觉得问题应该不是出现在音视频库了,就从工程里面的类开始找问题,也没发现什么定义重复的错误。最后发现可能头文件引用的问题,在.h文件里面导入了类的头文件,尝试改了一个之后,发现报错少了一个,就明白问题出现在这里了,但是这是在Xcode12里面没有报错的,编译器没报错,其实是有规范的,不能在.h文件里面导入类的头文件,只能进行声明,很多东西还是要按照苹果的规范来做,不然后面可能就会出问题,而且出现的报错令人很难找到问题