C++函式過載

一分快三大小單雙走勢技巧q10532761發表於2021-02-14

C+中的函式過載

在實際的程式碼編寫當中,有時候對於同一個功能函式,可能處理的物件型別不同,則需要重新實現一遍這個函式,這樣下去就顯得程式碼更加繁多,C++為了解決這一問題,而支援函式過載來解決這個問題。

比如一個算術求和的問題,需要自定義一個函式,用來接收傳入資料的並求和,但作為獨立的一個模組,如何知道呼叫方,傳入什麼型別的資料呢,可能是整型資料,當然也可能是浮點型別的資料,還可能是一個整數一個浮點型(還不知道哪一個是整型,哪一個是浮點型),而周全的做法是各種型別的形參的函式都要定義一個,即:兩個int型別的,兩個double型別的,第一個int第二個double的,及第一個double第二個int的型別的,定義四個函式來實現:比如名字叫:Add_double_double()、Add_int_double()、Add_int_int()、Add_double_int()等等

這看起來能不混亂嗎?

那麼,C++中函式過載的出現,則很好的解決這個問題,函式過載即兩個或以上的函式,函式名相同,但形參型別或個數不同,編譯器根據呼叫方傳入的引數的型別和個數,自動選擇最適合的一個函式來進行繫結呼叫,自動實現選擇。

相關文章