2016-03-05 53 views
0

我試圖在兩個視圖控制器之間傳遞一個數組對象。但我希望數組作爲參考傳遞並且不被複制。我知道如果我在本地使用某個功能,基於我找到的示例,我可以使用「inout」和「&」。如何通過引用在視圖控制器之間傳遞數組對象

但我想要做的事情略有不同。我想將VC1中的Array直接分配給VC2中的Array對象作爲參考。這裏是我的代碼:

override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) { 

    if segue.identifier == "vc2" { 

     let vc2 = segue.destinationViewController as! ProfileVC 

     vc2.data = &self.data  //I know this line doesn't work, how would I go about it? 

    } 

} 

回答

1

Swift數組是結構,所以它們將被複制。

最簡單的方法是使用一個對象而不是一個結構體。所以我會用一個NSMutableArray來代替。

因此,您將擁有指尖可變性的所有能力;-)

相關問題