这段程序会输出什么?
swift
@propertyWrapper
struct Clamped {
private var value: Int
let range: ClosedRange<Int>
var wrappedValue: Int {
get { value }
set {
value = min(max(newValue, range.lowerBound), range.upperBound)
}
}
init(wrappedValue: Int, _ range: ClosedRange<Int>) {
self.range = range
self.value = min(max(wrappedValue, range.lowerBound), range.upperBound)
}
}
struct Player {
@Clamped(0...100) var health = 120
}
var player = Player()
print(player.health)
player.health = -5
print(player.health)