
习惯了OC开发的朋友都知道,宏定义在研发工作中是必不可以的,可是当你使用swift开发时,也想使用宏定义,这时修改却发现没办法使用#define xxxx,或static Nsstring *const xxx进行定义。这是什么情况?
这是因为在swift中命名空间的缘故,即整个项目共享命名空间,决定了不能使用宏定义语法的。为了实现类似于OC中的宏定义,可以添加一个空的Const.swift文件,在其中,我们将原本oc中不需要接受参数的宏,定义成let常量,或定义成枚举值,将需要接受参数的宏定义成函数即可,然后再直接使用Const.swift中定义的这些公共的常量和函数。
使用示例:
var wIDth = kScreenWitdhprint(wIDth) wIDth = GetScreenWIDth()print(wIDth) var time = kDateFormat_Hmprint("time = \(time)") time = TimeFormat.format_yyyyMdHmsS.rawValueprint("time = \(time)") 注意事项:使用枚举值时,需要区分是String类型,还是Int类型,String类型时取值使用rawValue,Int类型时取值使用hashValue。 总结 以上是内存溢出为你收集整理的swift中使用宏定义(使用let常量,或enum枚举,或函数)全部内容,希望文章能够帮你解决swift中使用宏定义(使用let常量,或enum枚举,或函数)所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)