在几种Microsoft语言中,存在“with block”的想法。例如,而不是
myObject.x = 5
myObject.y = 10
myObject.z = 12
你可以写一些像
这样的东西With myObject
.x = 5
.y = 10
.z = 12
End With
Swift中有类似的东西吗?
答案 0 :(得分:3)
没有内置于该语言中,但有一个名为Then的库提供此功能:
let myObject = MyObject().then {
$0.x = 5
$0.y = 10
$0.z = 12
}
如果您希望在没有依赖项的实例化时使用此行为,则可以使用从闭包返回的var:
let myObject: MyObject = {
let _myObject = MyObject()
_myObject.x = 5
_myObject.y = 10
_myObject.z = 12
return _myObject
}()