<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                # Swift 嵌套函數 > 原文: [https://www.programiz.com/swift-programming/nested-functions](https://www.programiz.com/swift-programming/nested-functions) #### 在本文中,您將了解 Swift 中的嵌套函數及其如何與示例一起使用。 如果[函數](/swift-programming/functions "Swift functions")存在于另一個函數的主體內,則稱為嵌套函數。 ## 嵌套函數的語法 ```swift func funcname() { //statements of outer function func anotherFuncname() { //statements of inner function } } ``` 在此,函數`anotherFuncname`在另一個函數`funcname`的主體內部。 應當注意,內部函數只能在封閉函數(外部函數)內部調用和使用。 * * * ## 示例 1:沒有返回值的嵌套函數 ```swift func outputMessageByGreeting(_ message: String) { func addGreetingAndPrint() { print("Hello! \(message)") } addGreetingAndPrint() } outputMessageByGreeting("Jack") ``` 運行該程序時,輸出為: ```swift Hello! Jack ``` 在上述程序中,正在從封閉函數`outputMessageByGreeting()`調用嵌套函數`addGreetingAndPrint()`。 語句`outputMessageByGreeting("Jack")`調用外部函數。 并且外部函數內部的語句`addGreetingAndPrint()`調用輸出`Hello! Jack`。 您不能在函數`outputMessageByGreeting`之外調用函數`addGreetingAndPrint`。 * * * ## 示例 2:具有參數和返回值的嵌套函數 嵌套函數可以包含帶有參數和返回值的函數。 ```swift func operate(with symbol:String) -> (Int, Int) -> Int { func add(num1:Int, num2:Int) -> Int { return num1 + num2 } func subtract(num1:Int, num2:Int) -> Int { return num1 - num2 } let operation = (symbol == "+") ? add : subtract return operation } let operation = operate(with: "+") let result = operation(2, 3) print(result) ``` 運行該程序時,輸出為: ```swift 5 ``` 在上面的程序中 * 外部函數為`operate()`,返回值類型為`Function(Int,Int) -> Int`。 * 內部(嵌套)函數為`add()`和`subtract()`。 嵌套函數`add()`和`subtract()`在封裝函數`operate()`之外正在使用。 這是可能的,因為外部函數返回這些函數之一。 我們將封閉函數`operate()`之外的內部函數用作`operation(2, 3)`。 程序內部調用`add(2, 3)`,在控制臺中輸出 5。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看