Swift println()不会在let中显示任何内容

时间:2015-02-28 12:07:39

标签: swift println

为什么在println()语句中调用in时,我无法看到public class TestClass { public var testType: String = "" public func test(test:((TestClass) -> Void)!){ testType = "TEST" } } var request = TestClass() request.test({(response: TestClass) in println("Test: \(response.testType)") }) 的输出?我怎样才能在Xcode中看到这个输出?

我已经完成了这个虚拟测试代码:

{{1}}

2 个答案:

答案 0 :(得分:0)

你没有在TestClass.test中调用闭包

将其更改为

public func test(test:((TestClass) -> Void)!){
    testType = "TEST"
    test(self)
}

答案 1 :(得分:0)

在您的示例中,您调用方法test()作为TestClass -> Void类型的参数函数。但是,在test()方法的实现中,您永远不会调用传递的函数,因此永远不会执行println()

你可以尝试

public func test(testFunction:((TestClass) -> Void)!){
    testType = "TEST"
    testFunction(self)
}