使用系統(tǒng)已有運算符
如果系統(tǒng)已經(jīng)定義過該運算符虹蒋,例如 +
+=
等等,我們就直接給該運算符添加一個方法
// 定義一個結(jié)構(gòu)體
struct Subject {
var string: String
var number: Int
}
// 給 + 運算符添加方法烘跺,功能為處理Subject的實例中的屬性
func +(left: Subject, right: Subject) -> Subject {
var sbj = Subject(string: "", number: 0)
// 字符串拼接
sbj.string = left.string + right.string
// 兩個數(shù)字相加
sbj.number = left.number + right.number
return sbj
}
接下來使用這個運算符
let s1 = Subject(string: "s1", number: 1)
let s2 = Subject(string: "s2", number: 2)
let s = s1 + s2
print(s.string) // 輸出 "s1s2"
print(s.number) // 輸出 3
自定義運算符
二元運算符
// 舉個栗子,隨便寫的,我也沒想到用什么
infix operator +++
func +++(left: String, right: String) -> String {
return left + right
}