2017-07-27 101 views
2

在幾種Microsoft語言中,有「帶塊」的概念。例如,而不是swift是否具有相同的「帶塊」

myObject.x = 5 
myObject.y = 10 
myObject.z = 12 

你可以寫類似

With myObject 
    .x = 5 
    .y = 10 
    .z = 12 
End With 

是否有雨燕類似的東西?

回答

3

沒有內置的語言,但有一個叫Then庫,它提供了這種功能:

let myObject = MyObject().then { 
    $0.x = 5 
    $0.y = 10 
    $0.z = 12 
} 

如果你想在實例化這種行爲不存在依賴關係,你可以使用從返回的變種關閉:

let myObject: MyObject = { 
    let _myObject = MyObject() 
    _myObject.x = 5 
    _myObject.y = 10 
    _myObject.z = 12 
    return _myObject 
}() 
+0

非常有趣......謝謝! –

相關問題