微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Swift:如何优雅地使用 print()三

作者:Andyy Hope,原文链接,原文日期:2016-04-21
译者:Darren;校对:Cee;定稿:CMB

如果说 log 是一种时尚,那你就是时尚设计师。

我本来没打算写这个系列的第三部分的,但是在前两部分的读者的回复中我得到了一些反馈信息,我觉得看一看人们是怎么建议的是一个很好的阅读和练习的方式。

如果你还没看过前面的部分,你可以回头看看第一部分第二部分

log 枚举

有读者提到,也许使用「log」这个词并不是最好的选择。原因很简单,「log」 会和计算算法复杂度会用到的对数相混淆。我完全同意。

函数重载

这一点我没想到我会忽视了。不要与函数重写(Override)相混淆,函数重载(Overload)一个允许我们创建同名但不同参数的函数的语言特性。

print("Hello World")

这是一个普通的 print() 函数,可以通过可变参数的形式使用多个 Any 类型的参数。现在我们用第二部分的一个例子来重载它:

func print(ln: String) {
    print("✏️" + " " + ln
}
func print(url: NSURL) {
    print("?" + " " + url.absoluteString
}

我们没有在一个 struct 或 class 中声明,因为我们希望这是一个全局函数,这样我们就可以在我们项目中的任何一个 .swift 文件中访问和使用了。

感谢 Neradoc 对避免使用「log」术语的建议,Jérôme Alves 对使用函数重载的建议,以及 Wayne Bishop 在他的 Swift 算法 一文中提到了我。

本文由 SwiftGG 翻译组翻译,已经获得作者翻译授权,最新文章请访问 http://swift.gg

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐