var a = 1;
var b = a;
a=2;
println("\(a),\(b)");//2,1
struct cs{
var v:Int = 99;
}
var i = cs();
var j = i;
i.v = 98;
println("\(i.v),\(j.v)");//98,99
class ca{
var v:Int;
init(var a:ca){//拷贝构造实现传值
self.v = a.v;
}
init(){
v = 100;
}
}
var x = ca();
var y = x;
var z = ca(a: x);
x.v = 200;
println("\(x.v),\(y.v),\(z.v)");//200,200,100
//Int、struct是copy,class是引用
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。