美文网首页
Swift条件编译

Swift条件编译

作者: 诗颜语 | 来源:发表于2022-04-14 14:22 被阅读0次

一、 Flag

if DEBUG

let name = "name"

print("实际内存大小", MemoryLayout.size(ofValue: name))

print("内存对齐大小", MemoryLayout.alignment(ofValue: name))

print("分配的内存大小", MemoryLayout.stride(ofValue: name))

endif

可以在 Build settingsswift compiler - custom flags 中设置Flag(eg: MYDEBUG)

image.png

二、System

if os(macOS) || os(tvOS) || os(iOS) || os(watchOS)

...

endif

三、是否能import

if canImport(SnapKit)

...

endif

四、芯片架构

if arch(x86_64) || arch(arm) || arch(arm64) || arch(i386)

...

endif

五、Swift编译版本/版本

暂不清楚 compiler() 与 swift() 的区别

if compiler(>=5.4.2) || compiler(<1.0)

...

endif

if swift(>=5.4)

...

endif

六、目标环境

目前应该只有模拟器simulator一个值

if targetEnvironment(simulator)

...

endif

相关文章

  • Swift:与OC混编

    目录一,条件编译二,KVO/KVC三,Swift调用OC四,OC调用Swift五,字符串六,多线程 一,条件编译 ...

  • swift条件编译

    在 C 系语言中,可以使用 #if 或者 #ifdef 之类的编译条件分支来控制哪些代码需要编译,而哪些代码不需要...

  • Swift 条件编译

    方法可选参数os()macOS, iOS, tvOS, watchOS, Linuxarch()x86_64, a...

  • Swift:条件编译

    应用场景 在项目工程中编写代码,但是需要对部分功能做区分处理(系统、设备等)。就需要使用系统的条件编译方式来处理。...

  • Swift条件编译

    一、 Flag if DEBUG let name = "name" print("实际内存大小", Memor...

  • Swift补基础之Selector、条件编译、编译标记、NSOb

    在swift中使用条件编译比较直接 例如 :在debug模式和release模式编译不同代码 在swift中判断i...

  • Swift中的条件编译

    1、条件编译2、宏定义define 1、条件编译 Swift中没有宏定义的概念,因此我们不能使用#ifdef的方法...

  • Swift 条件编译(随笔)

    背景 在日常开发过程中,Debug 模式下经常需要输出一些日志,程序出现错误时,便于 bug查找和定位,但是在 R...

  • Swift下如何使用#if条件编译

    Swift下如何使用#if条件编译 Swift 不像ObjectC一样,通过定义一个变量,然后使用#if #end...

  • OC、Swift设置编译条件

    在 OC 中我们设置编译条件,一般通过修改 Preprocessor Macros 中对应的宏定义。但是在Swif...

网友评论

      本文标题:Swift条件编译

      本文链接:https://www.haomeiwen.com/subject/ipmtertx.html