Function types
Along with, classes, structs, enums, and protocols, functions can also be used as types in Swift. In this section, we will explore how we can define functions as types and how we can use function types. Let's first discover what the type of the function is and how it is defined.
A function parameter type along with its return
type defines the type of the function. For instance, the function type for the following coding example is (Int, Double) -> String
:
func functionName(firstParam: Int, secondParam: Double) -> String
We will be able to use function types in the way we use other types. The following code example presents a function type:
var simpleMathOperator: (Double, Double) -> Double
Here, simpleMathOperator
is a variable of a function of the (Double, Double) -> Double
type. In other words, simpleMathOperator
stores a function that accepts two Double
parameters and returns a Double
value.
To make it a little easier to read, we could define typealias
for the function...