こののみセッタープライベートプライベートセッター「セット()」スイフト
docsでstruct Point {
var x = 0.0, y = 0.0
}
struct Size {
var width = 0.0, height = 0.0
}
struct Rect {
var origin = Point()
var size = Size()
var center: Point {
get {
let centerX = origin.x + (size.width/2)
let centerY = origin.y + (size.height/2)
return Point(x: centerX, y: centerY)
}
set(newCenter) {
origin.x = newCenter.x - (size.width/2)
origin.y = newCenter.y - (size.height/2)
}
}
}
センターを取得できますが、直接設定できないようにしたいですか?それですか? –
はい、あなたは正しいです –
私はそれがあなたが望むものに合うかもしれないと思って私の答えを元に戻しました。 'private(set) 'を使うもう一つの答えはうまくいくかもしれませんが、それがそうでないと思うものとは異なって動作します。 centerプロパティを設定できないようにするためには、中心の計算プロパティを使用するのが最善の方法です。これがうまくいくと期待しています –