【发布时间】:2021-11-09 22:27:41
【问题描述】:
示例代码:
struct test {
var itest: Int?;
}
var tests : [test] = [];
var t = test();
tests.append(t)
t.itest = 99;
print(tests[0].itest)
print(t.itest)
生产
nil
Optional(99)
因此,append 命令似乎创建了 t 的副本,而不是它的引用。 如果数组包含 t 的引用,则两个打印输出都必须是 itest=99。
【问题讨论】:
-
这能回答你的问题吗? Is Swift Pass By Value or Pass By Reference
-
在 Swift 中,只有类是引用类型。结构是值类型。
标签: swift