函数重载+内联函数+函数类型+嵌套函数+类型起别名

2020-09-03  本文已影响0人  梁森的简书

函数重载

1.函数名相同
2.参数个数不同|参数类型不同|参数标签不同
注意:返回值类型和函数重载无关,我们不用看返回值类型

内联函数

将函数调用展开成函数体
哪些函数不会被内联?
1.函数体比较长
2.包含递归调用
3.包含动态派发
如下代码

func test() {
    print("test")
}
test()

会直接调用print("test"),这样就减少了函数调用开销,不用再开辟回收test函数的栈空间了。
(联想:Dart中的箭头函数)

函数类型

每一个函数都是有类型的,函数类型由形式参数类型、返回值类型组成
1.函数类型可作为函数参数
如:


0.函数类型作为参数.jpg

2.函数类型可作为函数返回值
如:


0.函数类型作为函数返回值.jpg

嵌套函数

将函数定义在函数内部


0.嵌套函数.jpg

类型起别名

typealias


0.类型起别名.jpg
上一篇下一篇

猜你喜欢

热点阅读