Skip to Main Content
iOS 编程基础:Swift、Xcode 和Cocoa 入门指南
book

iOS 编程基础:Swift、Xcode 和Cocoa 入门指南

by Matt Neuburg
January 2017
Intermediate to advanced content levelIntermediate to advanced
552 pages
9h 43m
Chinese
China Machine Press
Content preview from iOS 编程基础:Swift、Xcode 和Cocoa 入门指南
44
2
全局
print
函数的第
1
个参数就是个可变参数,因此可以通过一条命令输出多个值:
print("Mannie", 3, true) // Mannie 3 true
默认参数对输出还做了进一步的细化。默认
separator:
个空格(当提供了多个值),
认的
terminator:
个换行符;你可以修改它们:
print("Mannie", "Moe", separator:", ", terminator: ", ")
print("Jack")
// output is "Mannie, Moe, Jack" on one line
遗憾的是,
Swift
语言中有一个陷阱:没办法将数组转换为逗号分隔的参数列表(相
比于
Ruby
中的
splat
)。如果一开始就有一个某种类型的数组,那么你不能在需要
该类型可变参数的地方使用它。
2.6
可忽略参数
局部名为下划线的参数会被忽略。调用者必须要提供一个实参,不过函数体中并没有它
的名字,因此无法引用。比如:
func say(s:String, times:Int, loudly _:Bool) {
函数体中无法使用
loudly
参数,不过调用者还是需要提供第
3
个参数:
say("hi", times:3, loudly:true)
声明不需要为忽略的参数提供外部名:
func say(s:String, times:Int, _:Bool) {
不过调用者必须要提供:
say("hi", times:3, true)
该特性的目的是什么呢?它并非为了满足编译器的要求,因为如果函数体中没有引用某 ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

机器学习实战:基于Scikit-Learn、Keras 和TensorFlow (原书第2 版)

机器学习实战:基于Scikit-Learn、Keras 和TensorFlow (原书第2 版)

Aurélien Géron
Swift 人工智能实战:从基础理论到AI 驱动的应用程序开发

Swift 人工智能实战:从基础理论到AI 驱动的应用程序开发

Mars Geldard, Jonathon Manning, Paris Buttfield-Addison, Tim Nugent

Publisher Resources

ISBN: 9787111556350