本頁內(nèi)容包括:
除了基本操作符中所講的運(yùn)算符,Swift還有許多復(fù)雜的高級(jí)運(yùn)算符,包括了C語和Objective-C中的位運(yùn)算符和移位運(yùn)算。
不同于C語言中的數(shù)值計(jì)算,Swift的數(shù)值計(jì)算默認(rèn)是不可溢出的。溢出行為會(huì)被捕獲并報(bào)告為錯(cuò)誤。你是故意的?好吧,你可以使用Swift為你準(zhǔn)備的另一套默認(rèn)允許溢出的數(shù)值運(yùn)算符,如可溢出加&+。所有允許溢出的運(yùn)算符都是以&開始的。
自定義的結(jié)構(gòu),類和枚舉,是否可以使用標(biāo)準(zhǔn)的運(yùn)算符來定義操作?當(dāng)然可以!在Swift中,你可以為你創(chuàng)建的所有類型定制運(yùn)算符的操作。
可定制的運(yùn)算符并不限于那些預(yù)設(shè)的運(yùn)算符,自定義有個(gè)性的中置,前置,后置及賦值運(yùn)算符,當(dāng)然還有優(yōu)先級(jí)和結(jié)合性。這些運(yùn)算符的實(shí)現(xiàn)可以運(yùn)用預(yù)設(shè)的運(yùn)算符,也可以運(yùn)用之前定制的運(yùn)算符。