How to set a function as function argument in Swift 3

前端 未结 3 364
轮回少年
轮回少年 2021-01-21 02:22

Q: Is it possible to pass a function as function argument in Swift 3?

To refactor my code, I want to have a global function. At the end of this function

3条回答
  •  后悔当初
    2021-01-21 02:37

    Yes you can pass a function/closure as parameter of another function.

    This is the syntax

    func doSomething(closure: () -> ()) {
        closure()
    }
    

    here the function doSomething receives as parameter a closure with no params and no return type.

    You can call doSomething with this syntax

    doSomething(closure: { _ in print("Hello world") })
    

    Or using the trailing closure syntax

    doSomething { 
        print("Hello world")
    }
    

提交回复
热议问题