Comparison operators overloading in Swift
Forums:
class Point {
var x: Int
var y: Int
init(x: Int, y: Int) {
self.x = x
self.y = y
}
}
//global function
func > (left: Point, right: Point) -> Bool {
return (left.x > right.x) && (left.y > right.y)
}
//global function
func < (left: Point, right: Point) -> Bool {
return (left.x < right.x) && (left.y < right.y)
}
let p1 = Point(x: 1, y: 2)
let p2 = Point(x: 2, y: 3)
let b1 = p1 > p2
//b1 is false
let b2 = p1 < p2
//b2 is true
- Log in to post comments