[Error]在Swift项目Build Settings的Preprocessor Macros中定义的宏无效的问题

问题

如图,在Build Settings -> Preprocessor Macros中添加了ISADEMO=1。但在代码中判断无效,还是会输出"isn't ADemo"

swift 复制代码
#if ISADEMO
    print("is ADemo")
#else
    print("isn't ADemo")
#endif

解决

如图,要让Preprocessor Macros定义的宏生效,还需要去Build Settings -> Other Swift Flags中标记新定义的宏,注意要用"-D"修饰。

相关推荐
大龄秃头程序员1 天前
Swift Concurrency 取消机制踩坑复盘:为什么很多人会误以为 Task 根本取消不了?
swift
软泡芙4 天前
【IOS】 Swift Package Manager (SPM) 指南
网络·ios·swift
东坡肘子4 天前
不是模型变慢了,是任务变大了 -- 肘子的 Swift 周报 #146
人工智能·swiftui·swift
大龄秃头程序员5 天前
Sendable 不是“能跑就行”:Swift Concurrency 下的实战踩坑与架构落地指南
swift
大熊猫侯佩6 天前
WWDC26 全新 SwiftData 的 .codable 宏选项:它不是泛型专用胶水
数据库·swift·apple
大龄秃头程序员6 天前
Swift 并发实战:从 Task 到 Actor 重入性,我掉进了“逻辑不一致”的坑
swift
LinXunFeng6 天前
给 Flutter 插件加上 Swift Package Manager 支持
flutter·swift
大龄秃头程序员6 天前
Swift 面试反直觉:Property Wrapper 真的拿不到宿主 self 吗?
swift
FeliksLv6 天前
从 +load 到 Swift Macros:自动注册的演进与实践
ios·objective-c·swift