Swift Tutorial - Tutorialspoint

(backadmin) #1

When we run the above program using playground, we get the following result:


82


64


46


When each and every time the outer function calcDecrement is called it invokes the
decrementer() function and decrements the value by 18 and returns the result with the
help of outer function calcDecrement. Here calcDecrement acts as a closure.


Even though the function decrementer() does not have any arguments closure by default
refers to variables 'overallDecrement' and 'total' by capturing its existing values. The copy
of the values for the specified variables are stored with the new decrementer() function.
Swift handles memory management functions by allocating and deallocating memory
spaces when the variables are not in use.

Free download pdf