我需要比较游戏中的速度,因此我使用扩展来声明“>”和“<”符号。我的代码如下所示:
extension CGVector {
var speed: CGFloat {
return hypot(dx, dy)
}
static func > (lhs: CGVector, rhs: CGVector) -> Bool {
return lhs.speed > rhs.speed
}
static func < (lhs: CGVector, rhs: CGVector) -> Bool {
return lhs.speed < rhs.speed
}
经过一些研究,我明白我应该使用上面的代码并且它有效。但是我对部分代码感到困惑。lhs 和 rhs 代表什么?
谢谢