上QQ阅读APP看书,第一时间看更新
5.7 模拟面试
(1)怎么理解函数?
回答要点提示:
①从表面来看,函数其实是一组代码的组合,因此函数也被称为完成特殊功能的代码块。
②函数的三要素是函数名、参数和返回值。
③在Swift语言中,函数的定义十分灵活,可以定义带默认值的函数,也可以定义参数个数不定的函数,函数的参数名也可以自由地设置内部名称和外部名称,甚至匿名。
④在定义函数时,可以将其理解为小功能单元,切记避免函数过于冗长。
核心理解内容:
熟练使用系统函数,熟练掌握函数的定义方法,理解函数参数和返回值的意义。
(2)什么是闭包?
回答要点提示:
①闭包是Swift中的一种高级语法结构,闭包的核心是在其中使用的局部变量会被额外地复制或引用,使这些变量脱离其作用域后依然有效。
②闭包的功能与函数类似,其也是完成特定功能的代码块。可以将闭包当作对象使用,将其赋值给指定的变量,并且可以使用此变量直接调用闭包。
③和函数一样,闭包也有参数和返回值。
④闭包也可以作为函数的参数或返回值。
⑤在Swift中,闭包有逃逸闭包与非逃逸闭包之分,对于逃逸闭包,函数内的闭包在函数外依然有效,对于非逃逸闭包,离开函数后闭包将失效。
⑥Swift语言中的闭包写法十分灵活,可以使用各种技巧来编写非常简洁的闭包代码,例如后置闭包技巧、省略参数类型技巧、省略返回值类型技巧等。
核心理解内容:
在实际开发中,闭包的使用非常频繁,网络回调、自定义算法块、界面间传值等都会使用到闭包,掌握闭包知识是学习Swift的重中之重。