迅速考虑以下结构:
CrossBadge.Current.SetBadge(number);
我很好奇以下各项之间的性能差异:
选项A:
struct Point {
var x:Float
var y:Float
mutating func add(x:Float) {
self.x += x
}
}
选项B
var p = Point(x:0,y:0)
p.add(x:1)
我特别想知道编译器在Option B中是否足够聪明,可以简单地对p进行突变而不创建Point的新实例。