swift语言捕获值swift语言入门很简单大学霸

swift语言捕获值swift语言入门很简单大学霸

7.9.4  捕获值swift语言捕获值swift语言入门很简单大学霸

Swift1.1语言快速入门大学霸

Swift1.1语言快速入门大学霸

闭包可以在其定义的上下文中捕获常量或变量。以下就使用incrementor()函数从上下文种对值runningTotal和amount进行捕获。代码如下swift语言捕获值swift语言入门很简单大学霸:

import Foundation

func makeIncrementor(forIncrement amount: Int) -> () -> Int {

var runningTotal = 0

//定义函数incrementor(),实现runningTotal的增加

    func incrementor() -> Int {

        runningTotal += amount

        return runningTotal

    }

    return incrementor

}

//赋值

var a = makeIncrementor(forIncrement: 10)

//输出

println(“输出a的增量”)

println(a())

println(a())

println(a())

var b = makeIncrementor(forIncrement: 5)

//赋值,输出swift语言捕获值swift语言入门很简单大学霸

println(“输出b的增量”)

println(b())

println(b())

println(b())

运行结果如下所示:

输出a的增量

10

20

30

输出b的增量

5

10

15

Program ended with exit code: 0

swift语言捕获值swift语言入门很简单大学霸

Comments are closed.