C++ 允許在同一作用域中的某個函數(shù)和運算符指定多個定義,分別稱為函數(shù)重載和運算符重載。
重載聲明是指一個與之前已經(jīng)在該作用域內(nèi)聲明過的函數(shù)或方法具有相同名稱的聲明,但是它們的參數(shù)列表和定義(實現(xiàn))不相同。
當調(diào)用一個重載函數(shù)或重載運算符時,編譯器通過把所使用的參數(shù)類型與定義中的參數(shù)類型進行比較,決定選用最合適的定義。選擇最合適的重載函數(shù)或重載運算符的過程,稱為重載決策。
C++ 中的函數(shù)重載

C++ 中的運算符重載


當上面的代碼被編譯和執(zhí)行時,它會產(chǎn)生下列結果:
Volume of Box1 : 210
Volume of Box2 : 1560
Volume of Box3 : 5400
可重載運算符/不可重載運算符
可重載的運算符列表:

不可重載的運算符列表:
