我有一个看起来像这样的结构
struct myStruct {
var array1: [String]
var additionalInfo: String?
var array2: [String]
}
var appendMe = [myStruct(array1: ["Value1"], additionalInfo: nil, array2: ["Value1","Value2"])]
在 MainViewController 中的我用附加值附加它,但当我尝试从 AppDelegate 访问它们时,例如像这样
appendMe[array1.count-1].array2[0]
我总是在更新之前继续获取结构中设置的原始值。就像Xcode为 MainViewController 和 AppDelegate 创建一个单独的结构实例。
如何解决此问题?
谢谢!
答案 0 :(得分:2)
结构在Swift中按值传递,而不是通过引用传递。您的主视图控制器正在修改结构的副本,而不是您认为的那个。