知识卡片
函数是一等公民
内容
函数本身也有类型(由参数类型和返回类型共同决定,如 (Int,Int)->Int),因此可以像普通值一样赋给变量、作为参数传给另一个函数、或作为另一个函数的返回值。这让”把一部分算法逻辑交给调用者决定”变得自然:一个函数只需要把”如何组合入参”这一步留成一个函数类型的参数,具体传乘法还是加法由调用者决定,函数体自身不必写死。发散:这是高阶函数、回调、策略模式在语言层面的根基——不需要额外的接口/类包装一层,函数值本身就足够表达”一段可传递的行为”。
参考来源
《Swift全解析:新式iOS实战开发》第7章《Swift函数》