Найти тему
Apple Swift

Swift: функция в качестве возвращаемого значения

SWIFT: функция в качестве возвращаемого значения

func oneFuction()->(){
print("функция которая ничего не возвращает")
}
oneFuction()
func twoFunction()->()->Void{
print("Функция twoFunction() которая возвращает функцию ->(), которая ничего не возвращает ->() или ->Void")
return oneFuction
}

->() может служить как обозначением функции которая ничего не возвращает, так и обозначением возврата другой функции.

Если возвращаемая функция ничего не возвращает то в функции которая возвращает эту функцию это обозначается ->() или ->Void .

Имя возвращаемой функции указывается без скобок return oneFuction .

var OF=twoFunction()
func threeFunction(text:String)->String{
return text
}
func fourFunction()->(String)->String{
return threeFunction
}
var TF = fourFunction()
TF("hello")

Функция возвращает функцию с параметром типа строка (String) и возвращающимся значением типа строка (String).

Возвращаемая функция присваивается в качестве значения переменной TF.

При вызове функции через TF имя параметра не указывается.

func fiveFunction(text:[Int])->[Int]{
return text
}
func sixFunction()->([Int])->[Int]{
return fiveFunction
}
var SF=sixFunction()
SF([1,2,3,4,5])

Функция возвращает функцию которая в качестве значения параметра принимает числовой массив и возвращает числовой массив.