按照swift添加预编译宏的方式,在Preprocessor Macros中添加一个宏,然后在Other Swift Flags中添加-D,但是今天新建了一个工程之后发现代码中竟然无法使用这个宏。查了很多资料都没有找到确切的解释以及解决方案,一同事试了一上午,终于找到原因,这个宏必须是swift和OC混编才可以生效。也就是说必须得加入Project-Bridging-Header.h文件才可以。
以前看文档一直没理解swift不支持宏定义的说法,这次加了宏不生效才深刻理解了这句话,swift确实不支持,但是可以混编OC,把OC中的宏解释为全局变量来使用。所以说还是得好好的思考官方文档