Sobes.tech
Junior

Оё функсияҳои синфи аввал дар забони барномасозии Swift вуҷуд доранд?

sobes.tech AI

Ҷавоб аз AI

Бале, дар Swift функсияҳо функсияҳои синфи аввал мебошанд.

Ин маъно дорад, ки функсияҳо метавонанд:

  • Ба тағйирёбандаҳо ва константҳо таъин карда шаванд.
  • Ба сифати аргументҳо ба дигар функсияҳо гузаронида шаванд.
  • Аз дигар функсияҳо баргардонида шаванд.

Масалан, таъин кардани функсия ба тағйирёбанда:

func greet(name: String) -> String {
    return "Салом, \(name)!"
}

let greetingFunction = greet

print(greetingFunction("Дунё")) // Натиҷа: Салом, Дунё!

Масалан, гузаронидани функсия ҳамчун аргумент:

func applyOperation(value: Int, operation: (Int) -> Int) -> Int {
    return operation(value)
}

func double(number: Int) -> Int {
    return number * 2
}

let result = applyOperation(value: 5, operation: double)
print(result) // Натиҷа: 10

Масалан, баргардонидани функсия аз дигар функсия:

func makeMultiplier(factor: Int) -> (Int) -> Int {
    func multiplier(number: Int) -> Int {
        return number * factor
    }
    return multiplier
}

let multiplyByThree = makeMultiplier(factor: 3)
print(multiplyByThree(4)) // Натиҷа: 12