天天看點

《C和C++代碼精粹》——1.11 函數重載和函數模闆

本節書摘來自異步社群出版社《c和c++代碼精粹》一書中的第1章,第1.11節,作者: 【美】chuck allison,更多章節内容可以通路雲栖社群“異步社群”公衆号檢視。

c和c++代碼精粹

程式清單1.4中的交換函數(swap)隻有在交換整數時才有用。如果要交換兩個任何系統預定義的資料類型中的對象該麼辦呢?c++允許定義多個同名函數,隻要它們的特征不同。是以就可以為所有系統預定義的資料類型定義一個交換函數:

等等。

然後就可以調用交換函數用于任何兩個系統預定義資料類型對象的交換。然而,假如要實作這些函數中的每一個,不用多久就會發現正在反複地做同一件事而唯一不同的是要交換對象的類型。為了使工作更簡潔并減少犯低級錯誤,可以定義一個模闆函數來代替所有的函數。關于模闆詳細内容請參見第8章。

本文僅用于學習和交流目的,不代表異步社群觀點。非商業轉載請注明作譯者、出處,并保留本文的原始連結。

繼續閱讀