//扩展,typealias别名 , mutating 修改了成员变量就用这个修饰
struct Point{
var x = 0.0
var y = 0.0
}
struct Size {
var width = 0.0
var height = 0.0
mutating func push(){
width = 2
}
}
class Rectangle {
var origin = Point()
var size = Size()
init(origin:Point,size:Size){
self.origin = origin
self.size = size
}
}
extension Rectangle{
func translate(x x:Double,y:Double){
self.origin.x += x
self.origin.y += y
}
//便利的构造函数,必须用self.init 才行
convenience init(center:Point,size:Size){
self.init(origin:center,size: size)
}
}
let rect = Rectangle(origin: Point(), size: Size(width: 4, height: 3))
rect.translate(x: 1, y: 2)
swfit扩展
最新推荐文章于 2023-09-08 10:55:47 发布